Android 在片段中调用片段
我从第一个片段调用第二个片段,并在调用第二个片段时使用2个片段膨胀布局。第一个片段的布局也出现在第二个片段布局后面的屏幕上。我只想在屏幕上显示第二个布局。 这是密码Android 在片段中调用片段,android,android-fragments,Android,Android Fragments,我从第一个片段调用第二个片段,并在调用第二个片段时使用2个片段膨胀布局。第一个片段的布局也出现在第二个片段布局后面的屏幕上。我只想在屏幕上显示第二个布局。 这是密码 android.support.v4.app.FragmentManager fm = getFragmentManager(); facebookPictureShareFragment Picfragment = new facebookPictureShareFragment();
android.support.v4.app.FragmentManager fm = getFragmentManager();
facebookPictureShareFragment Picfragment = new facebookPictureShareFragment();
FragmentTransaction ft = fm.beginTransaction();
ft.add(((ViewGroup)getView().getParent()).getId(), Picfragment);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE);
ft.commit();
您需要将ft.add更改为ft.replace add()将一个片段添加到活动状态 替换() 替换添加到容器中的现有片段。这是 本质上与当前为所有对象调用remove(Fragment)相同 添加了使用相同ContainerWebID添加的片段,然后 使用此处给出的相同参数添加(int、Fragment、String)
尝试使用回调并将此代码插入到活动中(不在片段中),请查看此链接以了解更多详细信息:
如果一次显示一个片段,Google建议对一个活动使用一个片段,并将该片段用作容器。使用EventCallbacks方法可以使活动非常简单,然后您可以更简单地添加或删除片段。只需替换片段即可。ft.更换();((ViewGroup)getView().getParent()).getId()是您在片段中替换的同一个容器。为什么不使用要替换的视图的id。like(R.id.集装箱船_id)