【发布时间】:2014-01-15 18:25:10
【问题描述】:
我尝试使用 Imagebutton 关闭当前片段。
我在Fragment-A,点击按钮会转到Fragment-B。
当我点击 Fragment-B 的按钮时,它会转到 Fragment-C 并关闭 Fragment-B。
如果我点击 Fragment-C 的返回按钮,它将返回 Fragment-A。
我尝试过的代码如下
camera_album = (ImageButton) view.findViewById(R.id.camera_album);
camera_album.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
closefragment();
Fragment fragment = FileBrowserFragment.newInstance(null, null, null) ;
MainActivity.addFragment(LocalFileBrowserFragment.this, fragment) ;
}
});
private void closefragment() {
getActivity().getFragmentManager().beginTransaction().remove(this).commit();
}
当我单击 fragment-B 的后退按钮时,它会转到 Fragment-C。
但是当我点击 Fragment-C 上的后退按钮时,它并没有回到 Fragment-A。 它回到空的背景。如果我想返回 Fragment-A ,我必须再次单击返回按钮。
所以,它似乎没有关闭当前的片段完整。
如何像Android的后退按钮一样完成当前的fragment?
【问题讨论】:
-
这是什么
MainActivity.addFragment(LocalFileBrowserFragment.this, fragment)??。您需要将片段添加到 backstak 并相应地弹出相同的片段 -
函数addFragment中有添加片段。
-
将片段添加到什么和一个活动方法??
-
getActivity().onBackPressed();可以这样做
标签: android android-fragments activity-finish