我有一个主菜单活动,即菜单(A)。活动A有6个片段。其中一个是图片库(图1)。当您触摸图片时,您将转到图片详细信息活动(B)(图2)。我将标签“parentName”添加到AndroidManifest.xml中的活动B.因此活动B的父级是活动A.问题是:当你在活动B中并按下向上按钮(图2)时,活动A被重新创建并显示活动A的第一个片段(不是画廊片段)。当您回到之前的活动时,我想要Instragram应用程序的相同行为。似乎Instagram应用程序不会重新创建以前的活动。预期的行为也类似于后退按钮的行为(图3)。我怎样才能实现这种行为?感谢
图1.图片详情活动
图2.图片详情活动
图3.后退按钮
答案 0 :(得分:5)
我很容易解决了我的问题。我只需要将标签 android:launchMode =“singleTop”添加到活动A中。我还在活动A中添加了下一个代码,但可能没有必要。我希望你觉得它很有用。
@Override
protected void onSaveInstanceState(Bundle outState)
{
super.onSaveInstanceState(outState);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState)
{
super.onRestoreInstanceState(savedInstanceState);
}
答案 1 :(得分:0)
可能以编程方式使用它:
getFragmentManager().beginTransaction().replace(R.id.content_frame, new FragmentB(),null).addToBackStack(null).commit();
将此替换为此行:
getFragmentManager().beginTransaction().add(R.id.content_frame, fragment,null).addToBackStack(null).commit();