如何检查View中是否存在间接孩子的天气?

时间:2015-06-18 08:54:00

标签: android android-layout view

这是我的布局。

<LinearLayout
                android:id="@+id/lyt_linearNative"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:visibility="gone" >

                <LinearLayout
                    android:id="@+id/lyt_tp1"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal" >

                    <ImageView
                        android:id="@+id/vmax_iv_icon"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:src="@drawable/bee7_btn_close" />

                    <LinearLayout
                        android:id="@+id/lyt_tp2"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:orientation="vertical" >

                        <TextView
                            android:id="@+id/vmax_tv_title"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:maxLines="1"
                            android:text="title" />

                        <TextView
                            android:id="@+id/vmax_tv_desc"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:maxLines="2"
                            android:text="Description" />
                    </LinearLayout>
                </LinearLayout>

                <View
                    android:id="@+id/view1"
                    android:layout_width="match_parent"
                    android:layout_height="1dp"
                    android:background="@android:color/black" />

                <LinearLayout
                    android:id="@+id/lyt_tp3"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal" >

                    <TextView
                        android:id="@+id/vamx_tv_totalInstall"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="left"
                        android:text="total install" />

                    <TextView
                        android:id="@+id/vamx_tv_price"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="right"
                        android:layout_marginLeft="50dp"
                        android:text="Price" />
                </LinearLayout>
            </LinearLayout>
        </LinearLayout>

请仅将上述布局视为模板。可以有任意数量的孩子。

我想检查 lyt_linearNative 中是否存在 vmax_tv_desc 。 我知道我们可以通过

获得直接的孩子
 View nextChild = ((ViewGroup)parentView).getChildAt(i);

但我想检查间接孩子。 任何帮助将不胜感激。

谢谢,

1 个答案:

答案 0 :(得分:1)

作为评论部分要求的答案:

我不会使用索引,因为它将代码&lt;&gt;布局紧密耦合 - 您只需在父级上找到ViewById:

parentView.findViewById(vmax_tv_desc)