2012-08-02 31 views
3

我使用最後一個SDK來創建導航類型爲的應用程序選項卡+滑動並且我想在其中一個選項卡上放置PreferenceFragment。在FragmentPagerAdapter上添加PreferenceFragment

生成的代碼是這樣的:

mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager()); 

// Set up the ViewPager with the sections adapter. 
mViewPager = (ViewPager) findViewById(R.id.pager); 
mViewPager.setAdapter(mSectionsPagerAdapter); 

同時,我無法添加PreferenceFragmentSectionsPagerAdapter,因爲它的方法的getItem(INT位置)返回一個片段,而不是一個FragmentActivity

我可能需要一些幫助在這裏。

+2

我很想看到這個答案,因爲我有完全相同的問題... – Revolutionair 2013-01-04 16:03:10

回答

3

問題是ViewPager的getItem(..)方法返回一個支持片段(即android.support.v4.app.Fragment)而不是android.app.Fragment,這是PreferenceFragments的擴展。基本上,PreferenceFragment使用API​​的非支持版本,因此與ViewPagers不兼容,並且沒有可用的PreferenceFragment支持版本。

+1

任何想法的解決方法?只需創建一個具有自定義控件的正常Fragment? – span 2013-02-05 17:53:26

+0

謝謝,@Espiandev;你的回答讓我在我的答案中找到了解決方法。 – PseudoNoise 2013-04-29 19:56:27

1

您可以升級到支持android.app.Fragment的v13 pager。我對類似的問題here給了一個詳細的答案。

相關問題