数据绑定通用变量
Data binding generic variable
如何定义数据绑定变量的泛型类型?
以下代码无法编译。
<data>
<variable
name="viewModel"
type="com.example.viewmodel.ViewModel<Model>"/>
</data>
你在XML中有一个左三角括号; XML 别这么玩。尝试
<data>
<variable
name="viewModel"
type="com.example.viewmodel.ViewModel<Model>"/>
</data>
您需要对 进行转义,如下所示:
<data>
<variable
name="viewModel"
type="com.example.viewmodel.ViewModel<Model>"/>
</data>
Android Studio 仍会显示 "Cannot resolve symbol" 错误,但 XML 会编译。这是一个已知问题。来自 Android Studio Support for Data Binding:
Note: Arrays and generic types, such as the Observable class, might display errors when there are no errors.
试试这个:
<data>
<variable
name="viewModel"
type="com.example.viewmodel.ViewModel<Model>"/>
</data>
<
负责<,>
负责>.
您可以像上面的例子那样设置:
<data>
<import type="com.example.path.Model"/>
<variable
name="obj"
type="com.example.viewmodel.ViewModel<Model>"
/>
</data>
注意:你可以在模型末尾写'>'或'>
'应该没问题
为避免错误显示,请不要忘记添加行以说明使用的对象类型:
<import type="com.example.path.Model"/>
如何定义数据绑定变量的泛型类型?
以下代码无法编译。
<data>
<variable
name="viewModel"
type="com.example.viewmodel.ViewModel<Model>"/>
</data>
你在XML中有一个左三角括号; XML 别这么玩。尝试
<data>
<variable
name="viewModel"
type="com.example.viewmodel.ViewModel<Model>"/>
</data>
您需要对
<data>
<variable
name="viewModel"
type="com.example.viewmodel.ViewModel<Model>"/>
</data>
Android Studio 仍会显示 "Cannot resolve symbol" 错误,但 XML 会编译。这是一个已知问题。来自 Android Studio Support for Data Binding:
Note: Arrays and generic types, such as the Observable class, might display errors when there are no errors.
试试这个:
<data>
<variable
name="viewModel"
type="com.example.viewmodel.ViewModel<Model>"/>
</data>
<
负责<,>
负责>.
您可以像上面的例子那样设置:
<data>
<import type="com.example.path.Model"/>
<variable
name="obj"
type="com.example.viewmodel.ViewModel<Model>"
/>
</data>
注意:你可以在模型末尾写'>'或'>
'应该没问题
为避免错误显示,请不要忘记添加行以说明使用的对象类型:
<import type="com.example.path.Model"/>