当 出现时,我试图从 ViewModel 中清除 EditText。评论 被点击。我已经通过 View 绑定(bind)到 ViewModel 以及 Comment 按钮。当从 View 中单击评论按钮时,有没有办法清除 EditText 而无需在实际 Activity 中创建 OnClick 监听器?
这是查看代码。
<Button
android:id="@+id/Comment_button"
android:onClick="@{() -> ViewModel.newComment()}"
android:text="Comment"/>
<EditText
android:id="@+id/Comment_textbox"
android:text="@={ViewModel.Comment}" />
这是它正在访问的 ViewModel。
var Comment : String? = null
fun newComment()
{
//Sends data to repostitory.
}
是否有一些代码可以清除 EditText 而不必在 Activity 中创建 onclick 监听器?
最佳答案
而不是简单的 String
属性,您可以创建 ObservableField<String>
进行以下更改,
var Comment = ObservableField<String>()
然后在你的绑定(bind)方法中
fun newComment()
{
Comment.set("")
}
因此,每当您的
Comment
属性变化,将立即反射(reflect)在您的UI
.
关于android - 通过绑定(bind)单击提交时从 ViewModel 中清除 EditText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60806667/