我正在尝试设置一个平板电脑友好的界面。因此,我有两个导航选项卡,它们打开两个片段。主Activity的onCreate:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mActionBar = getActionBar();
mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
Tab mainTab = mActionBar.newTab()
.setText("Articoli")
.setTabListener(new TabEventListener(new InListFragment(0)));
Tab favTab = mActionBar.newTab()
.setText("Preferiti")
.setTabListener(new TabEventListener(new TestFragment("Preferiti")));
mActionBar.addTab(mainTab);
mActionBar.addTab(favTab);
}
这是我的 TabEvengListener:
public class TabEventListener implements TabListener {
Fragment mFragment;
public TabEventListener(Fragment fragment) {
mFragment = fragment;
}
public void onTabSelected(Tab tab, FragmentTransaction ft) {
ft.replace(android.R.id.content, mFragment, mFragment.getTag());
}
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
ft.remove(mFragment);
}
public void onTabReselected(Tab tab, FragmentTransaction ft) {
//NOTHING ATM
}
}
现在,我指的是这个 API 演示: http: //developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/FragmentLayout.html我有一个带有布局的 Activity包含一个或两个片段,具体取决于屏幕状态。我的问题来了:我没有一个活动,而是一个片段,我找不到任何方法来声明一个布局以获取两个子片段。我想在平板电脑上拥有一个带有两个窗格的界面,一个带有“标题列表”(对话列表),另一个带有“详细列表”(文本)。
我想知道是否有一种简单的方法来做我解释的事情,或者我必须删除导航选项卡,这样我才能使用 Activity 而不是 Fragment 并遵循 API 演示。提前致谢。