2015-06-03 31 views
0

我有一個具有兩個片段(A和B)的選項卡視圖的活動。片段A具有帶嵌套片段C的frameLayout。選項卡更改時嵌套片段仍然可見

將C更改爲D然後更改爲另一個選項卡項時,片段D的方法「isVisible」仍然返回Visible,因此操作菜單是可見的。

我thoungt在此解決方案:

@Override 
public void onPrepareOptionsMenu(Menu menu) 
{ 
    boolean v = ((ActionBarActivity) getActivity()).getSupportActionBar().getSelectedTab().getPosition() == 0; 
    menu.findItem(R.id.act_search).setVisible(v); 
} 

,但它是世界XD的糟糕的解決方案

+0

問題很簡單。我加入了替換的片段。謝謝 –

回答

0

的問題可能是FrameLayout裏顯示的單一視圖,加入的FrameLayout意見被放置在佈局的左上角以及添加到frameLayout的任何其他視圖將與之前的視圖重疊。 因此,請嘗試使用其他佈局,看看問題是否存在。

+0

它不起作用。片段C被片段D替換,但是當將選項卡視圖(滾動到片段B)中時,片段D的操作欄中的圖標不會丟棄。我檢查了片段D的「isVisible」方法,它仍然返回true。 –

+0

我認爲片段D在片段A上仍然可見,但它在屏幕上不可見。它可能嗎? –

+0

isVisible應該告訴它是否在屏幕上可見,你可以分享一些代碼嗎?你使用視圖尋呼機的碎片? – TommySM