4

如果您使用数据绑定设置提示,则提示不会浮动

<android.support.design.widget.TextInputLayout
    android:id="@+id/inputLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="bottom"
    android:theme="@style/TextAppearance.TextInputLayout.Form"
    >

    <EditText
        android:id="@+id/usernameEditTxt"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingBottom="@dimen/default_margin_3"
        android:textSize="16sp"
        android:singleLine="true"
        android:hint="@{model.label}"
        android:inputType="none"
        />
</android.support.design.widget.TextInputLayout>

但是,如果您手动设置提示,它会起作用。我正在使用 Android Studio 3.0 也使用 kapt "com.android.databinding:compiler:2.3.3"

有人解决了这个吗?

4

1 回答 1

1

您必须hintTextInputLayout.

使用材料组件:

 <com.google.android.material.textfield.TextInputLayout
      android:hint="@{viewModel.textHint}"

使用旧的支持库:

<android.support.design.widget.TextInputLayout
     android:hint="@{....}"

原因是仅从一次TextInputLayout读取提示属性(如果未指定)。TextInputEditText通货膨胀后,对 的变化TextInputEditText不会改变TextInputLayout' 的提示。由于相同的原因,您不会更新
上的数据绑定。TextInputEditTextTextInputLayout

于 2020-04-28T09:38:25.887 回答