안드로이드
(Android) EditText data binding
danune.dev
2022. 6. 10. 20:01
EditText의 text 속성을 바인딩 하는 방법입니다
두가지의 바인딩을 생각해볼 수 있는데요
- 단방향 바인딩 - 코드의 값이 변경되면 UI에 반영됨
- 양방향 바인딩 - UI에서 입력한 값이 코드값에도 반영됨
두가지를 각각 알아보겠습니다
1. 단방향 바인딩
EditText의 text속성을 viewModel의 text 에 바인딩하였습니다
이렇게 바인딩하면 viewModel의 text값이 변경되었을 때 EditText의 text도 함께 변경됩니다
하지만 EditText에 문자를 입력한다고 해서 viewModel의 text값이 변경되지는 않습니다
2. 양방향 바인딩
단방향 바인딩과 다른점을 찾았나요? text속성에 바인딩할때 =가 추가되었습니다
android:text="@={viewModel.text}"
이제 EditText에 문자를 입력하면, 입력한 값이 viewModel의 text에 반영됩니다