Kotlin 15

[Kotlin] 공부 15일차 (2022-02-02)

더보기 ▷ 앱바 사용하기 ▶ 앱바 레이아웃 - 화면 위쪽 영역 꾸미기 ▶ 코디네이터 레이아웃 - 뷰끼리 상호 작용하기 ▶ 캘랩싱 툴바 레이아웃 - 앱바 접히는 형태 설정하기 ▷ 탭 레이아웃 - 탭 버튼 구성 ▷ 내비게이션 뷰 - 드로어 화면 구성 ▷ 확장된 플로팅 액션 버튼 앱바 사용하기 머티리얼 디자인(material design) : 모바일과 데스크톱, 그리고 그밖에 다양한 장치를 아우르는 일관된 애플리케이션 디자인 지침이다. → 질감이 느껴지는 표면(tactile surfaces)과 대담하고 선명한 그래픽 디자인(bold graphic design), 아름답고 직관적인 사용자 경험을 위한 자연스러운 애니메이션을 특징으로 한다. □ 머티리얼 라이브러리 선언 implementation 'com.goog..

KOTLIN 2022.02.03

[Kotlin] 공부 14일차 (2022-02-01)

▷ 제트팩과 androidx 소개 더보기 더보기 ▷ appcompat라이브러리 - API호환성 해결 ▶ 액션 바 ▶ 메뉴 구성 ▶ 툴바 ▶ 호환성을 고려한 기본 뷰 클래스 더보기 더보기 ▷ 프래그먼트 - 액티비티처럼 동작하는 뷰 ▶ 프래그먼트 소개 ▶ 프래그먼트 구현 더보기 더보기 ▷ 리사이클러 뷰 - 목록 화면 구성 ▶ 레이아웃 매니저 ▶ 아이템 데커레이션 ▷ 뷰 페이저2 - 스와이프로 점기는 화면 구성 ▷ 드로어 레이아웃 - 옆에서 열리는 화면 구성 ▷ 11장 실습 제트팩과 androidx 소개 제트팩 : 안드로이드 앱을 개발하는데 필요한 다양한 라이브러리 모음 플랫폼 API → 플랫폼 API는 ART(Android runtime)에서 제공하는 안드로이드 앱의 핵심 라이브러리이다. → ART는 대부분..

KOTLIN 2022.02.02

[Kotlin] 공부 13일차 (2022-01-28)

▷ API 레벨 호환성 고려하기 ▷ 퍼미션 설정하기 ▶ 퍼미션 허용 확인 더보기 ▷ 다양한 다이얼로그 ▶ 토스트 메시지 띄우기 ▶ 날짜 및 시간 입력받기 ▶ 알림 창 띄우기 ▶ 커스텀 다이얼로그 만들기 더보기 ▷ 소리와 진동 알림 ▶ 소리 알림 ▶ 진동 알림 더보기 ▷ 알림 띄우기 ▶ 알림 객체 ▶ 알림 구성 ▶ 알림 스타일 ▷ 10장 실습 API 레벨 호환성 고려하기 □ API 레벨 설정 minSdkVersion 16 targetSdkVersion 30 → targetSdkVersion 30 은 30 버전의 API로 앱을 개발한다는 뜻이고 minSdkVersion은 최소 16 버전 기기에서도 오류가 발생하지 않아도 동작한다는 뜻이다. → 앱을 개발할 때 minSdkVersion 설정값보다 상위 버전에서..

KOTLIN 2022.01.29

[Kotlin] 공부 12일차 (2022-01-26)

더보기 ▷ 리소스의 종류와 특징 ▶ 앱 리소스 사용 ▶ 플랫폼 리소스 사용 더보기 ▷ 리소스 조건 설정 ▶ 화면 회전에 대응하기 ▶ 국제 언어 제공하기 ▷ 폰 크기의 호환성 ▷ 9장 실습 리소스 종류와 특징 리소스 : 정적 자원, 많이 사용할수록 코드를 더 간결하게 작성이 가능하다. 앱 리소스 사용하기 디렉터리명 리소스 종류 디렉터리명 리소스 종류 animator 속성 애니메이션 XML mipmap 앱 실행 아이콘 리소스 anim 트윈 애니메이션 XML layout 레이아웃 XML color 색상 상태 목록 정의 XML menu 메뉴 구성 XML drawable 이미지 리소스 raw 원시 형태로 이용되는 리소스 파일 values 단순 값으로 이용되는 리소스 xml 특정 디렉터리가 정의되지 않은 나머지 X..

KOTLIN 2022.01.28

[Kotlin] 공부 11일차 (2022-01-25)

더보기 ▷ 터치와 키 이벤트 ▶ 터치 이벤트 ▶ 터치 이벤트 처리 ▶ 터치 이벤트 발생 좌표 얻기 ▶ 키 이벤트 더보기 ▷ 뷰 이벤트 ▶ 뷰 이벤트의 처리 구조 ▶ 클릭과 롱클릭 이벤트 처리 ▷ 8장 실습 터치와 키 이벤트 터치 이벤트 터치(touch) : 앱의 화면에서 발생하는 사용자 이벤트 스와이프(swipe) : 화면에 손가락을 댄 상태로 쓸어넘기는 동작 액티비트 클래스에 터치 이벤트의 콜백 함수인 onTouchEvent()를 선언하면 이벤트 처리가 가능하다. onTouchEvent() 함수에 매개변수는 MotionEvent객체이고 터치 종류와 발생 지점이 담겨있다. 터치 이벤트의 종류 → ACTION_DOWN : 화면을 손가락으로 누른 순간의 이벤트 → ACTION_UP : 화면에서 손가락을 떼는..

KOTLIN 2022.01.25

[Kotlin] 공부 10일차 (2022-01-24)

▷ 겹쳐서 배치 - FrameLayout ▷ 표 형태로 배치 - GridLayout ▶ GridLayout 속성 ▷ 계층 구조로 배치 - ConstraintLayout ▷ 실습 겹쳐서 배치 - FrameLayout → 뷰를 겹쳐서 출력하는 레이아웃 클래스 □ FrameLayout에 버튼과 이미지 추가 → FrameLayout은 똑같은 위치에 여러 뷰를 겹처서 놓고, 어떤 순간에 하나의 뷰만 출력할 때 사용한다. 뷰의 표시 여부를 결정하는 visibility 속성을 함께 사용한다. □ visibility 속성값을 바꾸는 액티비티 코드 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { s..

KOTLIN 2022.01.24

[Kotlin] 공부 9일차 (2022-01-23)

더보기 ▷ 기본적인 뷰 ▶ 뷰 바인딩 ▷ 실습 더보기 ▷ 선형으로 배치 - LinearLayout ▶ LinearLayout 배치 규칙 ▶ layout_weight 속성 ▶ gravity, layout_gravity 속성 더보기 ▷ 상대 위치로 배치 - RelativeLayout ▶ RelativeLayout 배치 규칙 ▶ 맞춤 정렬하는 align 속성 뷰 바인딩 레이아웃 XML 파일에 선언한 뷰 객체를 코드에서 쉽게 이용하는 방법 □ 레이아웃 XML에 선언한 뷰 뷰 3개를 코드에서 id값으로 얻어서 사용할 수 있다. 하지만 뷰 바인딩 기법을 이용하면 코드에서 훨씬 더 간편하게 뷰 객체를 이용할 수 있다. buildFeatures{ viewBinding = true } build.gradle파일의 and..

KOTLIN 2022.01.24

[Kotlin] 공부 8일차 (2022-01-20)

더보기 ▷ 액티비티-뷰 ▶ 액티비티-뷰 클래스 종류 ▶ 액티비티-뷰로 화면 구성하는 방법 ▶ 액티비티 코드로 화면 구성 더보기 ▷ 뷰 클래스 ▶ 뷰 객체의 계층 구조 ▶ 레이아웃 중첩 ▶ 레이아웃 XML의 뷰를 코드에서 사용 ▶ 뷰 크기 지정 방법 ▶ 뷰의 간격 설정 ▶ 뷰의 표시 여부 설정 더보기 ▷ 기본적인 뷰 ▶ 텍스트 뷰 ▶ 이미지 뷰 액티비티-뷰 → 화면을 출력하는 컴포넌트(안드로이드 앱 컴포넌트 중에 유일하다) → 대부분의 앱이 화면을 제공하지만 화면 없이 백그라운드에서만 실행하도록 개발할 수 있다. → 화면이 여러 개여도 액티비티 1개로 개발할 수 있다.(Fragment를 이용한다) → 뷰(View) 클래스를 이용하여 구성한다. 액티비티-뷰 클래스 종류 → TextView 클래스 → Imag..

KOTLIN 2022.01.21

[Kotlin] 공부 7일차 (2022-01-19)

더보기 ▷ 함수 타입 ▶ 타입 별칭 ▶ 매개변수 타입 생략 ▷ 고차 함수 더보기 ▷ 널 안전성 ▶ 널 허용 ▶ 널 안전성 호출 ▶ 엘비스 연산자 ▶ 예외 발생 연산자 함수 타입 → 함수를 선언할 때 나타내는 매개변수와 변환 타입 fun some(no1:Int, no2:Int):Int{ return no1+no2 } val some: (Int, Int) -> Int = { no1: Int, no2: Int -> no1 + no2 } → 일반 함수를 함수 타입으로 변경하였다. 타입 별칭 → typealias 키워드를 이용하여 선언 typealias MyInt = Int fun main(){ val data1: Int = 10 val data2: MyInt = 10 } → 함수 타입뿐만 아니라 데이터 타입을 ..

KOTLIN 2022.01.19

[Kotlin] 공부 6일차 (2022-01-18)

더보기 ▷ 클래스 ▶ 클래스 선언 ▶ 클래스의 멤버 ▶ 객체 생성 더보기 ▷ 생성자 ▶ 주 생성자 ▶ 보조 생성자 ▶ 주 생성자와 보조 생성자 연결 더보기 ▷ 상속 ▶ 상위 클래스 생성자 호출 ▶ 오버 라이딩 ▶ 접근 제한자 더보기 ▷클래스 종류 ▶ 데이터 클래스 ▶ 오브젝트 클래스 ▶ 컴패니언 클래스 더보기 ▷ 람다 함수 ▶ 람다 함수 규칙 ▶ 매개변수가 없는 람다 함수 ▶ 매개변수가 1개인 람다 함수 ▶ 람다 함수의 반환 클래스 클래스 선언 class User{ } 코틀린에서는 클래스의 생성자를 본문이 아닌 선언부에 작성할 수 있어서 본문이 없는 클래스도 의미가 있다. 클래스의 멤버 class User{ var name = "kkang" constructor(name: String){//생성자 thi..

KOTLIN 2022.01.18