Dar*_*ord 5 android viewmodel kotlin android-livedata
我的登录活动有一个 LoginViewModel,位于 Activity_login.xml 中
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<data>
<variable
name="loginViewModel"
type="com.example.test.ui.login.LoginViewModel" />
</data>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/login_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<EditText
android:id="@+id/mobile_number"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:editable="true"
android:ems="10"
android:hint="@string/mobile_number_string"
android:inputType="phone"
android:textAlignment="center"
android:text="@={loginViewModel.phoneNumber}"
app:layout_constraintBottom_toTopOf="@+id/otp_input"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
Run Code Online (Sandbox Code Playgroud)
在我的 loginViewModel 中,我将 livedata 定义为
class LoginViewModel : ViewModel(){
private val _phoneNumber = MutableLiveData<String>()
val phoneNumber : LiveData<String>
get() = _phoneNumber
}
Run Code Online (Sandbox Code Playgroud)
现在,在构建时我收到以下错误
The expression \u0027loginViewModelPhoneNumber.getValue()\u0027 cannot be inverted, so it cannot be used in a two-way binding\n\nDetails: There is no inverse for method getValue, you must add an @InverseMethod annotation to the method to indicate which method should be used when using it in two-way binding expressions
Run Code Online (Sandbox Code Playgroud)
我正在阅读的所有文章都建议采用这种方式来实现。有人可以告诉我我在这里做错了什么吗?
小智 2
改变自
private val _phoneNumber = MutableLiveData<String>()
Run Code Online (Sandbox Code Playgroud)
到
public val _phoneNumber = MutableLiveData<String>()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2272 次 |
| 最近记录: |