2012-08-02 8 views
3

Я использую последний SDK для создания приложения с навигационным типом Tabs + Swipe, и я хочу разместить PreferenceFragment на одной из вкладок.Добавить PreferenceFragment на FragmentPagerAdapter

сгенерированный код, как:

mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager()); 

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

В то же время, я не могу добавить PreferenceFragment на SectionsPagerAdapter потому, что его метод GetItem (целое положение) возвращает фрагмент, а не FragmentActivity.

Возможно, мне нужна помощь прямо здесь.

+2

Мне очень хотелось бы получить ответ на этот вопрос, поскольку у меня такая же проблема ... – Revolutionair

ответ

3

Проблема заключается в том, что метод ViewPager getItem(..) возвращает вспомогательный фрагмент (т. Е. android.support.v4.app.Fragment), а не android.app.Fragment, что и распространяется PreferenceFragments. В принципе, PreferenceFragment использует не поддерживающую версию API, и поэтому несовместим с ViewPagers, и нет версии поддержки PreferenceFragment.

+1

Любая идея обходного пути? Просто создайте нормальный фрагмент с настраиваемыми элементами управления? – span

+0

Спасибо, @Espiandev; ваш ответ привел меня к обходному пути в моем ответе. – PseudoNoise

1

Вы можете перейти на пейджер v13, который поддерживает android.app.Fragment. Я дал подробный ответ по аналогичному вопросу here.

Смежные вопросы