Kotlin (View Binding)

subak96·2023년 8월 22일

코드를 작성하다보면 findViewById를 이용하여 버튼 및 텍스트들을 연결하여 쓰는데 이보다 코드가 간결해지고 연결성이 용이한 View Binding을 알아보도록하겠다.

View Binding과 findViewById의 차이점으로는 View Binding이 findViewById보다 예외처리의 위험성이 현저히 적고, 코드 또한 많이 간결해진다. 그리고 View Binding은 타입을 가지고 있어 타입이 다른 경우 발생하는 오류또한 방지 할 수있다 예로 imageView.text 같은 타입을 말하는것이다.

사용 예시를 통해 좀더 알아보자.

먼저 Gradle Scripts 안에 build.gradle 파일에 들어가 android {}라 적힌 코드 안에
buildFeatures{viewBinding = true} 을 작성함으로써 viewBinding을 사용 할 수 있게 해주고, Sync Now를 눌러 완료해준다.
그리고 xml로 넘어가 버튼과 텍스트뷰를 만들어준다.

여기까지 완료되었다면 MainActivity에서 코드를 작성해주면된다.

위 사진과 같이 작성해주면 되는데 전역변수로 binding를 선언를 꼭 해줘야한다. inflate는 xml에 있는 뷰를 객체화시켜준다고 생가하면 된다.

여기까지 완료되었다면 전부 완료한 샘이다. 이제 실행을 시키고 버튼을 누르면 다음과 같이 나올것이다.

만일 View Binding이 아닌 findViewById를 썻다면 텍스트와 버튼 각각에 val 변수명 findViewById<>() 을 일일이 입력하며 사용했어야하지만
binding.myButton
binding.myTextView.text
같이 타입을 가진 View Binding을 사용해 훨씬 코드를 사용하기 쉽고 가독성이 좋아진것을 볼 수 있다.

1개의 댓글

comment-user-thumbnail
2023년 8월 22일

앞으로 잘 부탁드립니다 형님

답글 달기