将变量传递到<include>的布局标签中

时间:2018-12-18 13:26:56

标签: android mvvm data-binding viewmodel android-databinding

你好,我想创建一个基本的xml,它本身可以保存变量布局。这是基本思想:

基本布局:

<data>
    <variable name="view" type="android.support.annotation.DrawableRes">
    <variable name="viewModel" type="myBaseViewModel">
</data>

<RelativeLayout> 

    <include layout="@{view}"
        bind:viewModel=@{viewModel}>

</RelativeLayout>

项目布局:

<layout> 
    <data>
        <variable name="viewModel" type="myBaseViewModel"/>
    </data>

    <TextView text = "@{viewModel.myText}" />
</layout>

活页夹布局:

<layout>
    <data>
        <variable name="viewModel" type="myViewModel"/>
    </data>

    <include layout="@layout/myBaseLayout"
        bind:view="@layout/myItemLayout"
        bind:viewModel="@{viewModel}/>
</layout>

有什么可能的方法吗?

1 个答案:

答案 0 :(得分:1)

我想您也希望此字段与变量一起更新。不,这是不可能的。 您必须在后台获取此字段引用,并在每次更新变量时对其进行更新。