无法通过android数据绑定引用<include>上的子视图

时间:2016-08-30 07:47:43

标签: android data-binding include

我是android数据绑定的新手。我无法引用

的子视图

无法执行 binding.inHeader.tvTryAgain

尝试访问inHeader的子视图时,我无法通过Android data binding

获得生成ID的任何建议

main.xml中

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

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:animateLayoutChanges="true"
        android:background="@drawable/im_bg_sign_up">

        <include
            android:id="@+id/in_header"
            layout="@layout/header_title_activity"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
</include>
</RelativeLayout>
</layout>

header_title_activity.xml

<layout xmlns:android="http://schemas.android.com/apk/res/android">
    <LinearLayout
        android:id="@+id/li_header"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/colorPrimary"
        android:orientation="vertical">

        <RelativeLayout
            android:id="@+id/re_error_message"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/re_title"
            android:animateLayoutChanges="true"
            android:background="@color/grey_normal"
            android:visibility="gone">


            <com.bigstar.tv.view.TextviewNormal
                android:id="@+id/tv_error_message"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerInParent="true"
                android:layout_centerVertical="true"
                android:layout_marginLeft="10dp"
                android:layout_toLeftOf="@+id/tv_try_again"
                android:padding="5dp"
                android:text="Please fill in all the details to continue signing up"
                android:textColor="@color/white"
                android:textSize="@dimen/text_small"
                android:textStyle="normal"
                android:typeface="normal" />

            <com.bigstar.tv.view.TextviewNormal
                android:id="@+id/tv_try_again"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:layout_marginRight="10dp"
                android:gravity="center"
                android:padding="10dp"
                android:text="@string/retry"
                android:textColor="@color/cyan1"
                android:textSize="@dimen/text_small"
                android:textStyle="normal"
                android:typeface="normal"
                android:visibility="gone" />

        </RelativeLayout>

    </LinearLayout>

</layout>

1 个答案:

答案 0 :(得分:0)

如果我已正确理解您的问题,我想您想在main.xml的include标记中添加“include.xml”。 为此,将您的包含部分修改为:

<include
            android:id="@+id/in_header"
            layout="@layout/include"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
</include>