2014-03-03 74 views
0

場景: 我在片段中使用ViewPager。此ViewPager使用FragmentPagerAdapter擴充3個片段(AFragment,BFragment,CFragment)頁面。onCreateOptions片段調用兩次

我已內部 onCreateOptionsMenu onPrepareOptionsMenu 所有3個片段的打印日誌。

問題:

對於AFragment時創建onCreateOptionsMenu被稱爲只有一次, 但是當我刷卡到BFragment onCreateOptionsMenu和 onPrepareOptionsMenu爲BFragment被稱爲兩次。和類似的 事情發生在CFragment中。

任何人都可以解釋爲什麼發生這種情況,我該如何避免它? 謝謝。

+0

安置自己的代碼在這裏... –

回答

0

因爲android默認會在後臺加載下一個和前一個片段,以便高效加載片段並消除滯後。

但是,您可以使用setOffscreenPageLimit(int limit)自定義相同的值,該值用於設置您希望在後臺加載的額外片段的數量。默認情況下,它設置爲1

閱讀Android fragments strange load瞭解更多信息

+0

默認情況下它是一個我們能不能改變,所以我怎麼能解決我的問題 – rajahsekar