我是 android 编程的新手,我正在尝试制作一个应用程序,该应用程序使用来自一个主要 fragment Activity 的 viewpager 中的选项卡。 The viewpager and tabs work fine but I want to have an options menu that when an item is selected, opens a completely new fragment, but I don't seem to be able to remove the view pager.我希望能够将新 fragment 放在主屏幕上的 viewpager 上,但尝试使用 fragment 事务来做到这一点似乎不起作用
有什么想法吗?
谢谢你的时间
最佳答案
确保:
1) 您的 Fragment(例如:ViewPagerFragment1)将由 viewpager 选择,它有一个 FrameLayout 作为根布局,id 为“container”,例如:
<FrameLayout
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:id="@+id/container"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout.... and so on
</FrameLayout>
2) 在 ViewPagerFragment1 类中,您必须在触发操作后将新 fragment 替换/添加到 FrameLayout。例如:
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.selection:
// Create new fragment and transaction
NewFragment newFragment = new NewFragment();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.container, newFragment, "NewFragment");
transaction.addToBackStack(null);
transaction.commit();
break;
default:
break;
}
}
关于Android 在 ViewPager 上打开 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16183243/