1. null 허용? - 코틀린에서는 기본적으로 Null을 허용하지 않는다. - 모든 객체는 생성과 동시에 값을 대입하여 초기화해야 한다. val a: String // 에러가 난다. val a: String = null // 코틀린에서는 기본적으로 Null을 허용하지 않기 때문에 에러가 난다. val a: String? = null // 에러가 나지 않는다. val a: String = name!! //null → 값이 아님을 ( !! )로 보증할 수 있다. var b = if ( a != null ) a else null // null b = a?.toB // null → 안전한 호출로 if문을 한 줄로 줄일 수 있다. b = a?.toB ?: "초기화하시오." //초기화하시오. → 엘비스 연산자로 ..
1. 코틀린을 사용하는 이유 1-1 2017 구글 I/O에서 정식으로 안드로이드 개발 언어로 추가되었다. 1-2 JVM 위에서 동작하며 자바와 100% 호환된다. 자바의 수많은 라이브러리를 그대로 사용하면서 코드는 더 간결하게 작성할 수 있다. 같은 기능을 구현하더라도 자바에 비해 더 적은 코드만 작성한다. 1-3 2018 구글 I/O에서는 대부부의 예제를 코틀린으로 설명한다. 2. 코틀린의 특징 2-1 간결한 코드 : 상용구 코드양을 대폭 줄여준다. 2-2 안전성 : Null 포인터 예외와 같은 오류를 피할 수 있다. 2-3 상호운용성 : 기존 자바 라이브러리와 100% 호환된다. 2-4 도구 친화적 : 자바, 안드로이드 개발 도구에서 그대로 사용 가능하다. 예제) MainActivity.kt clas..
데이터 바인딩 라이브러리 유연성과 호환성을 모두 제공하는 지원 라이브러리로, Android 2.1(API 레벨 7 이상)까지 Android 플랫폼의 모든 이전 버전에서 사용가능 빌드 환경 Android SDK Manager의 Support 저장소에서 라이브러리 다운로드 build.gradle 파일에 dataBinding 요소를 추가 android { .... dataBinding { enabled = true } } 데이터 바인딩 식 작성 루트 태그로 시작, 그 뒤에 data요소와 view루트 요소가 나온다. 이때 view요소는 루트가 파일에 있는 요소이다. sample data 내에 있는 user변수 - 이 레이아웃 내에서 사용할 수 있는 속성에 대한 설명 여기서 TextView의 텍스트는 사용자의 f..
뷰의 터치 이벤트 처리방법 3가지 - 액티비티에서 onTouchEvent 메서드 재정의 - 이벤트 처리하는 뷰 서브클래스에서 onTouchEvent 메서드 재정의 - 처리하고자 하는 뷰에 View.OnTouchListener 리스너 인터페이스를 등록 * 이벤트 처리의 흐름 - 액티비티에서의 이벤트 처리 액티비티 >> onTouchEvent 메서드를 재정의 >> 모든 뷰의 터치이벤트를 받을 수 있음 - 뷰에서 이벤트 처리 onTouchEvent 메서드를 재정의 >> 상속, 서브클래스 = 번거로움 or OnTouchListener 인터페이스를 등록 >> 인터페이스를 구현한 메서드에서 터치이벤트를 받음, 상속 x >>> 해당 뷰의 이벤트만 처리 - 2가지 다 구현되어 있다면? OnTouchListener의 메..
- Total
- Today
- Yesterday
- 함수
- gem update
- 격파르타 합격후기
- 코틀린
- dart
- Swift
- Kotlin
- .toml
- 연산자
- 변수
- IOS
- Xcode
- 안드로이드
- NoAnimation
- 격파르타 후기
- 격파르타 장점
- Java
- 음성재생
- 버전카타로그
- 스위프트
- Android
- 아이폰앱개발
- 자바
- rotate
- toml
- 아이폰
- sqld 자격증 합격
- ~=
- rotation
- FLUTTER
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |