Есть такая запись с использованием dataBinding.
В этом случае, достаточно написать так, и все переменные из класса ViewModel свяжутся с id лэйаута.
А если не использовать dataBinding, то мне приходится присваивать все переменные, но мне такой подход кажется плохим:
fun onLoginButtonClick(view: View) {
viewModel.email = binding.edtEmail.toString()
viewModel.password = binding.edtPassword.toString()
viewModel.onLoginButtonClick(view)
}