首页 > 解决方案 > 进度条可见性属性不适用于数据绑定

问题描述

可见性属性不起作用

      <data>
    <import type="android.view.View"/>
  
    <variable
        name="viewmodel"
        type="com.wiesoftware.spine.ui.auth.LoginViewModel" />
</data>

这是我的进度条代码

 <ProgressBar
        android:id="@+id/pbLogin"
        android:visibility="@{viewmodel.isVisibles ? View.VISIBLE : View.GONE, default=gone}"
        style="?android:attr/progressBarStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintBottom_toBottomOf="@+id/editTextTextPersonName2"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="@+id/editTextTextPersonName" />

我正在更改 viewModel 中 isVisibles 的值,但它不反映请给出解决方案。这是我更改 isVisibles 值的类。

class LoginViewModel(
    private val authRepositry: AuthRepositry
):ViewModel() {
    var email:String?=null
    var password:String?=null
    var loginEventListener:LoginEventListener?=null
    var isVisibles:Boolean=false
    fun loginButtonClicked(view: View){
        isVisibles=true
        if (email.isNullOrEmpty() || password.isNullOrEmpty()){
            loginEventListener?.onLoginFailed("Please enter credentials.")
            isVisibles=false
            return
        }
}
}```

> I have updated viewmodel class please check and let me know where is the issue I am using Kotlin Please provide me solution thanks








   

标签: androidkotlinmvvmdata-binding

解决方案


推荐阅读