我正在使用插入到FragmentStatePagerAdapter的ViewPager。每個片段都包含一個列表視圖。在此列表視圖中,我希望展示廣告並撥打分析服務器。我只想在用戶導航到片段時進行這些調用(所以我不能在片段中使用onCreateView或onActivityCreated事件)。有沒有一件事情我可以爲此目的?ViewPager + FragmentStatePagerAdapter:需要知道何時顯示片段(選中)
更新 我意識到,我取回我的當前片段的方法是在尋呼機flawe
@Override
public void onPageSelected(int page) {
this.currentPage = page;
tabsAdapter.getItem(page);
}
getItem(int position)
爲instanciating片段實際負責,因此這將創建一個新的獨立的片段(因此getActivity()
返回null)。我想我會採用一種方法來保存片段的地圖(<Position, Fragment>
),當在pagerAdapter中調用destoryItem時,我將從地圖中刪除片段。
我試過這個,但是在這個事件中,如果我嘗試啓動我的數據任務,我需要getActivity()作爲上下文,getActivity()將返回null – 2012-07-31 15:51:13
如果你在問題中提到了這個需求, )。你能用一些示例代碼來更新這個問題嗎?我有點驚訝onPageSelected會在onAttach之前被調用(這是getActivity()應該停止返回null) – lyricsboy 2012-07-31 17:18:42