2016-09-30 82 views
1

我創建Android應用程序的Android預防FragmentStatePagerAdapter,我已經掛一個FragmentStatePagerAdapterTabBar裏面我Activities一個允許用戶從滑動至FragmentFragmentActivity中的每個Fragment都由REST調用填充,如果失敗,將會彈出Dialog說您應該嘗試刷新您的信息(僅在您第一次查看Fragment時)。我遇到的問題是,由於FragmentStatePagerAdapter創建鄰近FragmentsFragment您目前,它正在創建的Dialog(S)表示Fragments過早地(例如,如果你在Fragment 3,和Fragment 4提示一個Dialog,它將顯示在Fragment 3而不是Fragment 4)。有沒有辦法關閉使用FragmentStatePagerAdapter來創建相鄰的Fragments如何從創建周邊片段

謝謝!

回答

1

,您可以控制區域通過調用setOffscreenPageLimit創建鄰近碎片的數量,但最低爲1

而不是在片段onCreateView創建對話框,我會做setUserVisibleHint代替。這樣,只有在確定用戶在頁面上時,纔會創建對話框。

1

不,我認爲你不能,雖然有對視尋呼機

viewpager.setOffscreenLimit(0) //defaults to 1 

屬性,但你可以嘗試一些其他的解決方案

  1. 顯示對話框中的onResume();
  2. 使Acitvity的接口,併火起來,以它在片段

    tab.setOntabselected {

    Pageselected(頁面編號)

}

實施