Kotlin Android 확장 프로그램은 지원 중단되었습니다. 즉, 뷰 결합에 Kotlin 합성을 사용하는 것이 더 이상 지원되지 않습니다. 앱이 뷰 결합에 Kotlin 합성을 사용하는 경우 이 가이드를 사용하여 Jetpack 뷰 결합으로 이전하세요.
앱에서 아직 뷰 결합에 Kotlin 합성을 사용하지 않는다면 뷰 결합에서 기본 사용법 정보를 참고하세요.
Gradle 파일 업데이트
Android 확장 프로그램과 마찬가지로 Jetpack 뷰 결합은 모듈별로 사용 설정됩니다. 뷰 결합을 사용하는 각 모듈의 경우 모듈 수준 build.gradle
파일에서 viewBinding
빌드 옵션을 true
로 설정합니다.
Groovy
android { ... buildFeatures { viewBinding true } }
Kotlin
android { ... buildFeatures { viewBinding = true } }
앱에서 Parcelable
기능을 사용하지 않는 경우 Kotlin Android 확장 프로그램을 사용 설정하는 줄을 삭제합니다.
Groovy
plugins { id 'kotlin-android-extensions' }
Kotlin
plugins { kotlin("android.extensions") }
모듈에서 뷰 결합을 사용 설정하는 방법에 관한 자세한 내용은 설정 안내를 참고하세요.
활동 및 프래그먼트 클래스 업데이트
Jetpack 뷰 결합을 사용하면 모듈에 포함된 각 XML 레이아웃 파일의 결합 클래스가 생성됩니다. 이 결합 클래스의 이름은 파스칼 표기법의 XML 파일 이름이며 끝에 Binding이라는 단어가 추가됩니다. 예를 들어 레이아웃 파일의 이름이 result_profile.xml
이면 생성되는 결합 클래스 이름은 ResultProfileBinding
입니다.
합성 속성 대신 생성된 결합 클래스를 사용하여 뷰를 참조하려면 다음을 실행하여 활동 및 프래그먼트 클래스를 변경합니다.
kotlinx.android.synthetic
에서 모든 가져오기를 삭제합니다.생성된 결합 클래스의 인스턴스를 활동이나 프래그먼트에 사용하도록 확장합니다.
- 활동의 경우 활동에서 뷰 결합 사용의 안내에 따라 활동의
onCreate()
메서드에서 인스턴스를 확장합니다. - 프래그먼트의 경우 프래그먼트에서 뷰 결합 사용의 안내에 따라 프래그먼트의
onCreateView()
메서드에서 인스턴스를 확장합니다.
- 활동의 경우 활동에서 뷰 결합 사용의 안내에 따라 활동의
합성 속성 대신 결합 클래스 인스턴스를 사용하도록 모든 뷰 참조를 변경합니다.
// Reference to "name" TextView using synthetic properties.
name.text = viewModel.nameString
// Reference to "name" TextView using the binding class instance.
binding.name.text = viewModel.nameString
자세한 내용은 뷰 결합 가이드의 사용법 섹션을 참고하세요.
추천 서비스
- 참고: JavaScript가 사용 중지되어 있으면 링크 텍스트가 표시됩니다.
- 뷰 결합
- Paging 라이브러리 개요
- Paging 구현 테스트