Android Kotlin : View Binding사용하기

2022. 8. 3. 18:57[Android APP] feat. Kotlin/Kotlin 공부

개요
findViewById

매번 xml에 있는 위젯들을 코드에서 사용하려면 findViewById로 할당해주다보니 프로젝트가 커지면서 화면에 위젯이 많으면 코드가 점점 복잡해짐을 느꼈다.

View Binding를 사용함으로 인해 코드상에서 할당하지 않고 바로 위젯을 끌어쓰기 때문에 훨씬 간결하고 편하게 사용할 수 있다.


본문

1. Gradle에 추가

 viewBinding {
        enabled true
    }

 

2. Activity에 ViewBinding 사용 선언

private lateinit var binding: ActivityMainBinding
binding = ActivityMainBinding.inflate(layoutInflater)
val view = binding.root

여기서 ActivityMainBinding같은 이름은 xml을 생성하면 자동으로 만들어지기 때문에 찾아서 써주기만 하면 된다.

 

 

예를들면 이런식으로...

 

3. 위젯 사용하기

 

binding이라는 변수에 Binding을 넣어줬기 때문에 아래 방식으로 사용해주면 된다.

binding.{사용할위젯ID}.-------이벤트

기존 할당 방식

val btn = findViewById<Button>(R.id.btn)
btn.setOnClickListener { 
}

뷰 바인딩 사용 시

binding.btn.setOnClickListener{
}

이렇게 한줄로 보기에는 잘 못느낄 수도 있지만 프로젝트 규모가 커질수록 훨씬 간결해지는 것을 볼 수 있다.

 

 

끝!

반응형