IT/안드로이드

코틀린 - 뷰 바인딩(ViewBinding)

_하늘여우_ 2022. 2. 13. 21:30

출처 : unsplash.com

 

#1. 

기존 java에서는 layout에 설정된 객체를 사용하기 위해 findViewById() 를 사용하여 해당 ID의 객체를 연결하여 사용하였습니다.

코틀린에서도 findViewById() 를 제공하였으나 kotlin-android-extensions 에서 제외되면서 "View Binding"을 사용해야 한다고 합니다.

 

#2.

뷰 바인딩을 적용하기 위해선 아래 순서대로 진행이 필요합니다.

1) 프로젝트 창에서 "모듈 수준의 build.gradle 파일에 '뷰 바인딩' 활성화

2) 적용하기 위해 상단 'Sync Now' 클릭하여 싱크 적용

파일 선택
뷰 바인딩 활성화
 
 

 

#3.

사용하기 위해 MainActivity.kt 에서 바인딩 초기화 및 레이아웃 표시 처리 합니다.

 

!! 그런데 위와 같이 코드를 작성하면... 에러가 난다... ㅠㅠ

구글에서 찾아보니.. gradle.properties 파일을 아래와 같이 수정을 해야 하는 것 같다. 아래와 같이 처리하니 에러가 해결되었다.

https://cdmana.com/2021/05/20210511224308742x.html

 

Viewbinding does not have permission to access viewbinding - 编程知识

Never too old to learn , I did it By the end Java learn Kotlin By the end Kotlin Fill the hole again One 、 cause because kotlin-android-extensions It's abandoned , So I used kotlin The code we write has to face the problem of modification . Tried or used

cdmana.com

gradle.properties 파일 수정

 

 

뷰 바인딩 처리 시 오류가 난다면 위에 방법으로 해결해보자.

 

참고)

https://medium.com/androiddevelopers/use-view-binding-to-replace-findviewbyid-c83942471fc

https://developer.android.com/topic/libraries/view-binding