android - 与 Android 4.0.3 中的 noHistory 属性不一致

标签 android android-activity android-4.0-ice-cream-sandwich

我将属性 noHistory=true 用于我不想保留在后台堆栈中的 Activity 。它在 Android 2.3.3 上工作正常但在 4.0.3 上有一个奇怪的行为。 当屏幕进入休眠状态而我将其唤醒时,noHistory=true 的 Activity 消失了!

这是怎么回事?屏幕唤醒时 Activity 是否完成?我是否以错误的方式使用了 noHistory?

最佳答案

我今天遇到了同样的问题,我在这里找到了解决方案:

Android: how to return to Activity with "noHistory" attribute after onStop?

事实上,将 noHistory 设置为 true,当屏幕进入休眠状态时,您的 Activity 将从堆栈中移除,并且在屏幕唤醒时不会恢复。

我从布局 xml 文件中删除了 noHistory=true,并在我的 Activity 调用另一个 Activity 时调用了 finish():

Intent intent = new Intent();
intent.setClass(this, MainActivity.class);
this.startActivity(intent);
finish();

成功了!当我点击后退按钮时,上一个 Activity 没有出现。

我不确定这个问题是否发生在 Android 2.x 上,但我可以肯定的是,它现在在 Android v2.x 和 Android v4.x 上都运行良好

关于android - 与 Android 4.0.3 中的 noHistory 属性不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10123763/

相关文章:

android - 在 finish() 之后,发布到 Activity 的 Handler 的 Runnables 将继续执行多长时间?

JAVA:没有得到我想要的小数位数

android - 将 fragment 添加到对话框

Android - 保留 fragment ?

java - Android OnTouchListener 不起作用

android - 您可以在 Android ICS 中强制显示三点下拉选项菜单吗?

java - 在 Android 上使用 JFrame(或外部等效项)

android - 来电屏幕上的弹出窗口,如 truecaller

android - networkOnMainThread 异常 Android

android - 为什么 setBitmap 在 ICS 中似乎不起作用?