2012-12-28 76 views
0

因此,如果用戶使用具有足夠大屏幕的設備(like a Samsung Galaxy Tab),我有2個可見片段。顯示相同的Android片段兩次,並使用調用getById

現在我正在顯示一個片段列表兩次(same fragment twice)。在片段的代碼中,我使用它來隱藏進度條。

ProgressBar pb = (ProgressBar)getActivity().findViewById(R.id.progress); 
pb.setVisibility(View.GONE); 

問題是它只能在其中一個片段上工作。兩者都有相同的ID,因爲它的片段相同? 我應該創建2個相同的片段,還是有可能在正確的片段中找到「正確」的進度條?

回答

2

替代在活動的視圖層次結構中查找視圖(ProgressBar),請在片段的視圖層次結構中找到它。所以片段內,做到以下幾點:

ProgressBar pb = (ProgressBar) getView().findViewById(R.id.progress); 

一般情況下,你不想做的查找,在父母的視圖層次結構,所以上述主要適用於在該片段中的佈局中的所有觀點。

+0

不知道getView()方法只返回當前視圖。像魅力一樣工作,謝謝。 – Patrick

相關問題