android:用edittext进行数据绑定

时间:2017-10-26 14:27:30

标签: android android-edittext android-databinding

我正在使用edittext进行数据绑定。我面临的问题是,方向改变会导致文本丢失。所以我通过保存onSaveInstanceState来设置文本。但随后文本的重点显示在文本的开头。我验证了edittext有一个唯一的id,因为这是文本丢失的主要原因。

 <EditText
        android:id="@+id/searchTextView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"


        android:focusable="true"
        android:focusableInTouchMode="true"
        android:imeOptions="actionDone|flagNoExtractUi"
        android:inputType="textNoSuggestions|textEmailAddress"
        android:text="@={searchText}"
        android:textColor="?colorShade1"
        android:textColorHint="?colorShade3"
        android:textSize="28sp" >
        <requestFocus/>
    </EditText>

1 个答案:

答案 0 :(得分:0)

您遇到的问题可能是在恢复视图状态后应用绑定。换句话说,在正确设置光标位置的情况下恢复视图状态,然后通过绑定消除该恢复。解决方案是在视图恢复之前应用绑定。

How to keep user inputs on screen orientation change with Android DataBinding library?是一篇文章,内容涵盖了如何执行此操作的详细信息。 How Do We Get Data Binding To Use Saved Instance State?是一个相关问题。