如何更新textview,使用Databinding android在editext中进行ontextchanged

问题描述 投票:0回答:1

我有可从用户那里得到输入的编辑文本

<EditText
        android:inputType="number"
        android:id="@+id/etQuantity"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:background="@drawable/button_background"
        android:backgroundTint="@color/green"
        android:hint="Quantity"
        android:padding="5dp"
        android:onTextChanged="@{inspect::onQuantityTextChanged}"
        android:textColor="@color/lightblack" />

 <TextView
            android:id="@+id/tvCalculatedTotal"
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:background="@drawable/button_background"
            android:backgroundTint="@color/green"
            android:hint="Total"
            android:inputType="number"
            android:padding="5dp"
            android:text="@={inspect.calculatedTotal}"
            android:textColor="@color/lightblack" />

我想将其设置为ontextchanged在编辑文本中的文本视图

class InspectViewModel(repository: UserRepository) : ViewModel() {

var calculatedTotal: String = ""

 fun onQuantityTextChanged(
    s: CharSequence,
    start: Int,
    before: Int,
    count: Int
) {

    calculatedTotal= s.toString()
    }
}

我正在获取值,但它没有更新文本视图,我使用了实时数据,但是获取了[[ANR

android kotlin mvvm data-binding android-viewmodel
1个回答
0
投票
也许您的可观察值未正确绑定到TextView(我不知道您如何在BaseObservableObservable中定义该类?]

0
投票
由于此行android:text="@={inspect.calculatedTotal}" ,您获得了ARN
© www.soinside.com 2019 - 2024. All rights reserved.