I use the last SDK to create an app with navigation type Tabs + Swipe and I want to put a PreferenceFragment on one of the tabs.
The generated code is like :
mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
// Set up the ViewPager with the sections adapter.
mViewPager = (ViewPager) findViewById(R.id.pager);
mViewPager.setAdapter(mSectionsPagerAdapter);
Meanwhile, I can’t add PreferenceFragment on the SectionsPagerAdapter because its method getItem(int position) returns a Fragment, not a FragmentActivity.
I may need some help right here.
The issue is that ViewPager’s
getItem(..)method returns a support Fragment (i.e.android.support.v4.app.Fragment) rather thanandroid.app.Fragment, which is what PreferenceFragments extend. Basically, a PreferenceFragment uses the non-support version of the APIs and so is incompatible with ViewPagers, and there is no support version of PreferenceFragment available.