2014-12-19 67 views
0

我有一個相對佈局作爲較大布局的一部分。 相對佈局的子視圖是線性佈局(其保持定製窗口小部件)和自定義部件傳播父視圖的可見性

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「abc」的子視圖總是v isible。我怎樣才能解決這個問題。 當相對佈局的可見性設置爲消失時,我想讓子視圖消失。

+0

你一定在做別的事情。如果你隱藏父視圖,那麼所有的孩子都會隱藏起來。 –

+0

你是對的,我的gradle沒有同步並且正在接收舊數據。現在,當我解決它的同步問題時,謝謝 – user3722531

回答

1

如果隱藏此佈局的父級/根(cotaniner)佈局,則子佈局總是不可見。

+0

相對佈局是另一個佈局的一部分,如果我過去整個佈局可能會得到一個想法 – user3722531

+0

您是對的,我的gradle沒有同步並且正在接收舊數據。現在,當我解決它的同步問題時,謝謝 – user3722531