我已經創建了一個viewpager,它顯示了3個相似的片段。這些片段具有相同的佈局,並且這些佈局中的視圖具有相同的ID(例如:DetailedPowerFragment中的RatingBar具有id詳細的評級條,並且DetailedWaterFragment中的RatingBar也是如此)三個片段的視圖具有相同的ID導致奇怪的行爲
但是,當我嘗試設置RatingBar與findViewById分別在每個片段中似乎找到了不同的RatingBar。
所以
final RatingBar ratingBar = (RatingBar)getSherlockActivity().findViewById(R.id.ratingBar);
ratingBar.setEnabled(false);
在DetailedWaterFragment
,將設置在DetailedPowerFragment中的RatingBar。下面你會看到創建viewpager的代碼,如果這是相關的 - 但是是什麼導致了這個問題?我是否需要爲我的所有觀點提供一個新的ID以確保這不會發生?
detailedFragments = new ArrayList<SherlockFragment>();
detailedFragments.add(new DetailedPowerFragment());
detailedFragments.add(new DetailedHeatFragment());
detailedFragments.add(new DetailedWaterFragment());
mMyFragmentPagerAdapter = new MyFragmentPagerAdapter(getSupportFragmentManager(), detailedFragments);
mViewPager.setAdapter(mMyFragmentPagerAdapter);
不確定要在這裏明白,爲什麼你創建了3次相同的佈局?爲什麼不創建只有一個和使用它的3個片段? – 2013-05-07 06:53:37