Очистить EditText из ViewModel при нажатии кнопки Отправить через Binding - PullRequest
0 голосов
/ 23 марта 2020

Я пытаюсь удалить EditText из ViewModel при нажатии Комментарий . Я связал View с ViewModel вместе с кнопкой Comment. Есть ли способ очистить EditText при нажатии кнопки комментария из представления без необходимости создания прослушивателя 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 без необходимости создания прослушивателя onclick в Activity?

Ответы [ 2 ]

1 голос
/ 23 марта 2020

Вместо простого свойства String вы можете создать ObservableField<String>

Выполните следующие изменения,

var Comment  =  ObservableField<String>()

И затем в вашем связанном методе

fun newComment()
    {
        Comment.set("")
    }

В результате, когда ваше свойство Comment изменится, оно будет немедленно отражено в вашем UI.

1 голос
/ 23 марта 2020
  Comment_textbox.setText(""); //
...