【发布时间】:2012-04-15 13:39:24
【问题描述】:
我的 HOME 按钮有奇怪的问题。 我有两个活动 A 和 B。
A 总是以 B 开头...像这样:
startActivityForResult(new Intent("com.test.B"), 0);
并听取完成整个应用程序的结果...但我认为这并不重要。
当我在 B 活动中时,按下 HOME 按钮...然后长按 HOME 按钮返回。 显示的是活动 A 而不是 B...
为什么会这样?任何想法?我应该在清单中设置一些东西吗? 看起来活动 B 已经完成了……但我不想那样做。我想显示 B...
这是来自 A 活动的一些代码:
// Start new activity
Intent intent = new Intent(getApplicationContext(),B.class);
startActivityForResult(intent, 0);
这是清单中的一些代码:
<activity
android:label="A"
android:name=".A"
android:screenOrientation="portrait" >
<intent-filter >
<action android:name="com.uno_manager.A" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity
android:label="B"
android:name=".B"
android:noHistory="true"
android:screenOrientation="portrait" >
<intent-filter >
<action android:name="com.uno_manager.B" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
我在这两个活动之前有一个活动...代表启动画面。
在活动 B 中,我重写了 onRestoreInstance 和 onInstanceSave 方法。在某些点击我调用setResult 和finish() 退出应用程序。但我认为这与此无关。
我试图从 B 活动中注释整个代码。我在onCreate 方法中只留下了setContentView。同样的事情也发生在 HOME 按钮上。
【问题讨论】:
-
有趣,我创建了一个测试项目并尝试过但对我有用吗?不同之处在于我是这样尝试的:
Intent intent = new Intent(); intent = new Intent(this, Test2.class); startActivityForResult(intent, 0);
标签: android android-activity android-homebutton