如何使用数据绑定设置android:inputType

Tha*_*tta 3 data-binding android

我正在尝试使用以下数据绑定表达式在显示密码的旧方法之间切换:

android:password="@{isMyFlagTrue}"
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用inputType现在不建议使用的password属性代替时,我似乎无法成功设置密码类型。我试过了:

android:inputType="@{isMyFlagTrue? InputType.TYPE_TEXT_VARIATION_PASSWORD : InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD)}"
Run Code Online (Sandbox Code Playgroud)

但这对EditText视图的inputType没有影响。即使当我尝试将其直接设置为不可见的品种时,它仍然可见。

有什么建议么?

Pha*_*inh 5

您可以设置输入类型使用数据绑定,例如

<EditText
    ...
    android:inputType='@{condition ? (InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD) : InputType.TYPE_CLASS_TEXT }'
    />
Run Code Online (Sandbox Code Playgroud)

  • &lt;import type="android.text.InputType"/&gt; 导入InputType类 (4认同)