数据绑定中的默认值出错

时间:2016-08-31 05:09:32

标签: android data-binding android-databinding

Databinding document中所述,我们可以使用android:text="@{place, default=Columbia}" 检查预览窗格中的值。

如果我有如下的简单字符串,那就完美了:

android:text="@{place, default=Gujarat, IN}"

但我有州和国家的组合,如果我正在使用,(逗号)则会产生问题。

, unexpected

显示错误tools:text,如何解决?

enter image description here

我知道我们仍然可以使用Databinding检查预览窗格中的输出,但如何使用defaultres.list中解决此问题?

3 个答案:

答案 0 :(得分:4)

更改刻度将起作用,但它会显示刻度:

android:text='@{place, default="Gujarat, IN"}'

您可以做的是创建一个字符串资源:

<string name="placeholder">Placeholder, text</string>

并将其用作默认值:

android:text='@{viewModel.placeHolder, default=@string/placeholder}'

答案 1 :(得分:1)

您需要引用整个值 例如:

android:text='@{place, default="Gujarat, IN"}'  

将起作用

答案 2 :(得分:0)

您可以将双引号后引号一起使用,或者将单引号双引号一起使用。查看this Android开发人员文档参考。

第一种方法

android:text="@{place, default=`Gujarat, IN`}"

第二种方式

android:text='@{place, default="Gujarat, IN"}'