Strong 감자의 공부

findViewById 와 ViewBinding 본문

개념_Android Studio with Kotlin

findViewById 와 ViewBinding

ugyeong 2023. 3. 26. 00:46

지금까지 둘다 섞어서 사용했는데 이번에 ViewBinding이 나오게 된 이유와 장점에 대해 알게 되었다.

앞으론 ViewBinding을사용하고 그동안 섞어썼던거 수정해야겠당...!

 

 

+추가 

내내 헷갈렸던 부분이 binding 과 binding.root의 차이였다. 이에 대해 졸업작품 팀원에게 물어봤는데 잘 설명해줘서 추가합니당.

막 섞어썼던 감자야...반성해...

 

 binding. 까지 쳤을 때와 binding.root. 까지 쳤을 때(오른쪽엔 set까지 더 쳤습니당 허헣) 템플릿으로 나오는게 다르다. 

 binding은 뷰 속성에 접근할 수 있고 binding.root는 뷰 자체에 접근이 가능하기 때문이라 생각한다.

그러면 binding.root가 있는데 binding의 존재 이유는 무엇일까?이에 대해 "짧아서가 아닐까?" 라고 그 친구가 말했다.  (0o0)

혹시 틀렸다면 답글 달아주시길 바랍니다.

 


요약-

ViewBinding 장점

1) Binding 클래스에 이미 뷰들이 정의되어 있기 때문에 모든 뷰를 순회하면서 찾을 필요가 없어 속도가 빠르고,

2) ActivityMainBinding에서는 activity_main.xml과 관련된 뷰들만 접근할 수 있으므로 null에 대한 위험성이 줄어든다.

 

정말 잘 설명해주신 블로그(🥰🥰)

https://holika.tistory.com/86

 

[내 맘대로 정리한 안드로이드] findViewById의 사용을 최소화해야 하는 이유와 대체 방법(ViewBinding)

처음 안드로이드를 접하면, 화면에서 원하는 뷰에 접근하기 위해 findViewById 메소드를 사용하게 된다. 아, 요즘은 기초를 배울 때 코틀린 extensions를 사용하는 방식이 더 보편적일지도 모르겠다.

holika.tistory.com