EditText绑定导致int变量为NULL / 0文本

时间:2018-10-24 11:52:21

标签: android android-databinding

我在Integer中有一个model值,并通过数据绑定将其设置为EditText

问题是,首次加载页面时,是否要nullEditText或默认值(0)设置为EditText >提示以显示

尝试1st:使用非基本类型Integer

private Integer storeCount;
android:text="@={model.storeCount+``}"

try1

尝试第二个:基本类型为int

private int storeCount;
android:text="@={model.storeCount+``}"

try2

尝试3rd:空检查

 android:text="@={model.storeCount == null ? null :(model.storeCount+``)}"

这会导致编译时错误。

请问有什么解决方法吗?

1 个答案:

答案 0 :(得分:1)

您应将其数据类型更改为String,而不要使用int或Integer即private String storeCount;

,并将一个新属性添加为android:inputType="number"到EditText 这样一来,用户只能输入数字。从EditText获取值时,将其值转换为int,即Integer.parseInt(value)