뷰 바인딩이란 kotlin extention에서 findViewById를 사용하지 않고 id 명으로 뷰를 접근했던 기능과 동일한 기능이다.
현재 kotlin extention은 2021년에 지원 중단이 될 예정이라 뷰 바인딩을 사용하는 것이 좋을 것 같다.
build.gradle(module) 파일에 접근해 아래와 같이 코드를 작성하여 뷰 바인딩 사용을 활성화 한다.
activity_login.xml 파일에서 passwordEditText라는 id의 텍스트를 뷰 바인딩을 사용해 가져와보도록 하겠다.
아래와 같이 activity_login.xml 파일에 passwordEditText라는 id를 가진 EditText를 선언하였다.
LoginActivity.kt 파일로 이동해 뷰 바인딩 코드를 작성한다.
class LoginActivity : AppCompatActivity() {
private lateinit var binding: ActivityLoginBinding
var auth: FirebaseAuth? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
//자동 생성된 뷰 바인딩 클래스에서의 inflate라는 메서드를 활용해
//액티비티에서 사용할 바인딩 클래스의 인스턴스 생성
binding = ActivityLoginBinding.inflate(layoutInflater)
//레이아웃 내부의 최상위 위치 뷰의 인스턴스를 활용해 생성된 뷰를 액티비티에 표시.
setContentView(binding.root)
var password = binding.passwordEditText.text.toString()
}
}
파스칼 케이스(첫 글자 대문자) + 카멜 케이스
Binding
이라는 명칭을 붙임.binding.id명
으로 activity_login.xml 파일 내의 뷰 id 접근이 가능해진다.파스칼 케이스(첫 글자 대문자) + 카멜 케이스
로 작성한다.