传播从父视图到子视图的可见性

时间:2014-12-19 19:52:44

标签: android android-layout

我有一个相对布局作为更大布局的一部分。 相对布局的子视图是线性布局(包含自定义小部件)和自定义小部件

overview.xml:

<FrameLayout>
    <CustomScrollWidget/>
    <LinearLayout>
        <include layout="@layout/layout_header"/>
        <CustomWidget/>
    </LinearLayout>
    <View/>
</FrameLayout>

layout_header.xml:

<LinearLayout id= "header">
    <View/>
    <RelativeLayout>
        <Child views>
    </RelativeLayout>
    <RelativeLayout
        id="abc"
        visibility="gone">
        <LinearLayout>
            <CustomWidget/>
            <CustomWidget/>
            <CustomWidget/>
        </LinearLayout>
        <CustomWidget/>
    </RelativeLayout>

Java代码:

RelativeLayout rel;
View viewHeader;

final View root = inflater.inflate(R.layout.overview, container, false);  
viewHeader = root.findViewById(R.id.header);  
rel = (RelativeLayout) viewHeader.findViewById(R.id.abc);
if(true){
    rel.setVisibility(View.GONE);
}
else{
    rel.setVisibility(View.VISIBLE);
}

相对布局ID的子视图&#34; abc&#34;总是可见的。我怎样才能解决这个问题。 当相对布局的可见性设置为消失时,我希望子视图消失。

1 个答案:

答案 0 :(得分:1)

如果隐藏父/根(cotaniner)布局,则此布局的子项也始终不可见。