我从片段中启动B片段A.Now从片段B中我点击主页Button.Again,打开应用程序,它调用OnResume。现在,如果我点击后退按钮,它退出的app.What,我应该做什么?
片段A到片段B的活动
Intent find = new Intent(getActivity(),FindActivityMain.class);
find.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
***startActivity(find);***Here i am not finishing the activity.片段B活动到片段B事务代码
Fragment myfindfragment = new FindFragmentMain(FindActivityMain.this,mylistitem,FindActivityMain.this,distance,featuredAD);
getSupportFragmentManager().beginTransaction()
.replace(R.id.blankfindlandingframe, myfindfragment).commitAllowingStateLoss();
}片段A活动在Manifest.In通用中声明为"SingleInstance“如果我执行这些步骤Perfect.But 1,则返回导航工作->。)单击主页按钮2。)再次长按Home键以恢复应用程序3。)单击应用程序中的back button.Exit。
这第三步应该不会发生。
请帮帮我!!
发布于 2014-08-13 19:42:19
移除find.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
发布于 2014-08-13 19:55:52
添加代码“addToBackStack(Null)”
Fragment myfindfragment = new FindFragmentMain(FindActivityMain.this,mylistitem,FindActivityMain.this,distance,featuredAD);
getSupportFragmentManager().beginTransaction()
.replace(R.id.blankfindlandingframe, myfindfragment).addToBackStack(null).commitAllowingStateLoss();
}发布于 2014-08-13 20:40:52
在活动B中添加以下内容:
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0)
{
finish();
return false;
}
return super.onKeyDown(keyCode, event);
}https://stackoverflow.com/questions/25284922
复制相似问题