我有一个 EditText
,我想根据 Parameter
是否为数字来设置其 inputType
:
interface Parameter {
boolean isNumeric();
}
我有这个:
<EditText
...
android:inputType="@{parameter.isNumeric()? number : text}"/>
但是解析XML时出现错误。我尝试将 number
和 text
值括在单引号和双引号(转义)中。
我该如何解决这个问题?
最佳答案
number
和text
值在 Java 上下文中将被视为变量。您必须确保设置适当的 Java 值。首先你必须导入InputType
在你的<data>
堵塞。然后使用相关的整数值。
<EditText
android:inputType="@{parameter.isNumeric() ? InputType.TYPE_CLASS_NUMBER : InputType.TYPE_CLASS_TEXT}" />
关于android - Android 数据绑定(bind)库中带有字符串文字的三元运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44392267/