完成活动行为取决于setOrientationScreen

时间:2012-03-23 08:36:10

标签: android android-activity android-intent

我花了3天时间试图解决这个问题:

  
      
  1. ActivityA启动ActivityB并退出。
  2.   
  3. 用户在activityB中按'退出'按钮,我正在调用finishB。
  4.   

我已将NO_HISTORY标记放在activityB上。此外,我在启动Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK时添加了activityB。 在清单中,所有活动都处于portrait模式。

在onCreate中启动没有setScreenOrientation的活动时,此功能正常。

拨打setScreenOrientation 时会出现问题。这导致活动被“重新启动”。 正确完成的问题正在开始。 Typicaly第二次尝试完成并不重新启动activityA。 在某些情况下,如果多次创建activityB - 失去焦点等或调用某些活动 - 多次调用完成解决问题:(。 看起来我有(B)的多个实例,并且必须克服所有这些实例。

3 个答案:

答案 0 :(得分:0)

你可以试试这段代码

Intent intent = new Intent(this, Alertactivity.class);
this.startActivity(intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
this.finish();

答案 1 :(得分:0)

对于activityA,在清单中放置android:launchMode =“singleInstance”。 当启动activityB和finishA时 - 由于'singleinstance'系统,不再启动activityA。 :)

答案 2 :(得分:0)

将此属性添加到android清单文件

中的活动标记

机器人:configChanges = “取向”