我有一个Activity,它可以打开一个库,为了显示它,我创建了一个Fragment子类,在这个子类中我进行了所有的定制。
我面临的问题是,为了关闭画廊,我不能删除Fragment。我尝试了以下几点:
closeGallery.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getActivity().getFragmentManager().popBackStack();
}
});但是它并没有将Fragment从Activity中删除。密码有什么问题吗?我是不是漏了什么东西才能删除Fragment
如果可以的话,下面是我如何将Fragment添加到Activity中
frame = new FrameLayout(NewsDetailsActivity.this);
frame.setId(R.id.galleryFragment);
setContentView(frame, new FrameLayout.LayoutParams(
FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT));
Bundle bundle = new Bundle();
bundle.putString("gallery", newsDetails.gallery.toString());
Fragment newFragment = new GalleryFragment();
newFragment.setArguments(bundle);
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.add(frame.getId(), newFragment).commit();发布于 2016-05-31 14:30:08
您错过了“添加到后面堆栈”。
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.add(frame.getId(), newFragment).addToBackStack(null).commit();https://stackoverflow.com/questions/37548281
复制相似问题