小编MST*_*MST的帖子

使用数据绑定将数据传递到 <include> 布局

我今天搜索了很多,只发现了一些关于这个问题的不清楚的答案。

我在一个表单中有多个 TextView 和 EditText,所有这些都是由我的主题自定义的,我想每次重用相同的包含布局,但有参数,例如 TextView 内的文本或 EditText 内的提示。

我现在的form.xml:

<LinearLayout android: orientation="horizontal">
     <TextView android:text="Username"/>
     <EditText android:id="edittext_username"
               android:hint="Enter username..."
               android:inputType="text"/>
</LinearLayout>

<LinearLayout android: orientation="horizontal">
     <TextView android:text="Password"/>
     <EditText android:id="edittext_password"
               android:hint="Enter password..."
               android:inputType="password"/>
</LinearLayout>

... other fields ...
Run Code Online (Sandbox Code Playgroud)

我在主 form.xml 中想要什么:

<LinearLayout android:orientation="vertical" ...>
     <include layout="form_edittext" 
            app:textview_text="@{`Username`}"
            app:edittext_hint="@{`Enter username...`}"
            ... other parameters ...
 />
     <include layout="form_edittext"
            app:textview_text="@{`Password`}"
            app:edittext_hint="@{`Enter password...`}"
            ... other parameters ...
 />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

还有 form_edittext.xml:

<layout xmlns:android="http://schemas.android.com/apk/res/android">

    <data>
        <variable name="textview_text" type="java.lang.String"/>
        <variable name="edittext_id" type="java.lang.String"/>
        <variable name="edittext_inputType" type="java.lang.String"/>
        <variable name="edittext_hint" type="java.lang.String"/> …
Run Code Online (Sandbox Code Playgroud)

xml data-binding parameters android include

8
推荐指数
1
解决办法
6614
查看次数

标签 统计

android ×1

data-binding ×1

include ×1

parameters ×1

xml ×1