Android 完成活动行为取决于屏幕上的设置方向
我花了3天时间试图解决这个问题:Android 完成活动行为取决于屏幕上的设置方向,android,android-activity,android-intent,Android,Android Activity,Android Intent,我花了3天时间试图解决这个问题: ActivityA启动ActivityB并退出 用户按下activityB中的“退出”按钮,我正在呼叫finishB 我已将NO\u HISTORY标记放在activityB上。我还将Intent.flag\u ACTIVITY\u CLEAR\u TOP\Intent.flag\u ACTIVITY\u NEW\u TASK放在启动activityB时。 在清单中,所有活动都处于纵向模式 在onCreate中启动活动时,如果没有设置ScreenOrientat
NO\u HISTORY
标记放在activityB
上。我还将Intent.flag\u ACTIVITY\u CLEAR\u TOP\Intent.flag\u ACTIVITY\u NEW\u TASK
放在启动activityB
时。
在清单中,所有活动都处于纵向
模式
在onCreate中启动活动时,如果没有设置ScreenOrientation
,则此功能正常。
调用设置屏幕方向时出现问题
。这会导致“重新启动”活动。
正确完成的问题开始了。通常,使用finish的第二次尝试不会重新启动活动a
。
在某些情况下,如果多次创建了activityB
,或者调用了一些活动,则多次调用finish可以解决问题:(。
看起来我有(B)的多个实例,必须将它们全部关闭。您可以尝试此代码
Intent intent = new Intent(this, Alertactivity.class);
this.startActivity(intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
this.finish();
对于activityA,将android:launchMode=“singleInstance”放入清单中。 启动activityB和finishA时-由于“singleinstance”系统无法再次启动activityA。
:)将此属性添加到android清单文件中的活动标记中
android:configChanges=“orientation”您能否共享代码段创建意图并启动B和A,B清单声明尝试将清单文件中的activityB的启动模式设置为
singleInstance
,并将configChange
设置为orientation
我正在使用此标志。仔细阅读