public void onBackPressed()
{
Intent setIntent = new Intent(this,xxxxx.class);
startActivity(setIntent);
return;
}
我将onBackPressed()
调用到一个活动处理发生得很好。但是它再次调用相同的活动(即)如果我们在android手机中按回去,之前的onCreate()方法无法调用正常动作,如果我们覆盖'onBackPressed()'onCreate()按照上面的代码调用。那么我们如何在没有onCreate()的帮助下开始活动。
答案 0 :(得分:0)
在return
之前,您可以致电finish();
。和/或代替return
致电super.onBackPressed();
。
答案 1 :(得分:0)
最后我找到了上述问题的答案。使用“活动”组来保持切换类,并在按下后退时减少一个值(一个“活动”)。以下内容对您有用:
从一个活动切换到另一个活动
在从一个活动切换到另一个活动时创建Arraylist历史记录将该特定视图添加到历史记录
View view = getLocalActivityManager()
.startActivity(
getString(R.string.hometab),
new Intent(this, Sample.class)
.addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT)
).getDecorView();
FinderActivityGroup.finderGroup.replaceView(view);
背面按下
当按下时,减去(减去)历史记录,如下面的代码
if (history.size() > 0) {
history.remove(history.size() - 1);
setContentView(history.get(history.size() - 1));
}
else {
finish();
}
return;
我们正在减少历史记录,这意味着onCreate()
方法无法再次调用,这就像正常的背压一样。
答案 2 :(得分:0)
这是一个简单的方法: 只需添加finish();而不是回归; 这不会让堆栈累积。
public void onBackPressed()
{
Intent setIntent = new Intent(this,xxxxx.class);
startActivity(setIntent);
finish();
}