是否可以在平板电脑操作栏选项卡和手机 ViewPager 中使用片段?手机似乎使用了支持库,并且与操作栏中的 TabListener 不兼容。让两者都使用相同的片段有什么诀窍吗?
到目前为止,我看到的唯一可能的解决方法是this。
谢谢
是否可以在平板电脑操作栏选项卡和手机 ViewPager 中使用片段?手机似乎使用了支持库,并且与操作栏中的 TabListener 不兼容。让两者都使用相同的片段有什么诀窍吗?
到目前为止,我看到的唯一可能的解决方法是this。
谢谢
当然,请查看ActionBarTabsPager
兼容性库源中的示例。您需要在适配器中实现这两个接口来处理选项卡切换和分页。像这样的东西:
public class TabsPagerAdapter extends FragmentPagerAdapter implements
ViewPager.OnPageChangeListener, ActionBar.TabListener {
// implement both
}
您需要添加这样的选项卡(使用支持/兼容性库):
getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
viewPager = (ViewPager) findViewById(R.id.content);
tabsAdapter = new TabsPagerAdapter(this, getSupportActionBar(),
viewPager);
ActionBar.Tab tab = getSupportActionBar().newTab();
MyFragment f = new MyFragment();
tabsAdapter.addTab(tab, f);
这是来自 Nikolay Elenkov 回答的 TabsPagerAdapter https://wwwjdic.googlecode.com/svn-history/r684/branches/2.0/wwwjdic/src/org/nick/wwwjdic/TabsPagerAdapter.java的示例实现。
这个想法是使用android-support-v13.jar。该文件包括原生 Fragment 的 FragmentPagerAdapter 以及 ViewPager。
http://developer.android.com/training/backward-compatible-ui/index.html
这是将兼容性库中的 Fragment 与 ActionBar.Tab 和 TabListener 一起使用的好方法。