리오
08/05/2019, 9:45 PMval username = MutableLiveData<String>()
. In the xml, the edit text is defined as:
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/username"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="@string/username_or_email"
android:inputType="textPersonName"
android:text="@={loginViewModel.username}" />
The login button is defined as:
<Button
android:id="@+id/login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="65dp"
android:enabled="@{loginViewModel.loginButtonEnabled}"
android:onClick="@{() -> loginViewModel.onLogin()}"
android:text="@string/login"
app:layout_constraintEnd_toEndOf="@+id/password_text_input_layout"
app:layout_constraintTop_toBottomOf="@+id/password_text_input_layout" />
The loginButtonEnabled
is a variable in the LoginViewModel.
val loginButtonEnabled = Transformations.map(username) {
null != it
}
Aslam Hossin
08/06/2019, 7:00 AM