我的 android 应用程序中有一个选项卡栏,在每个选项卡中还有 5 到 7 个活动的流程,所有这些活动都必须显示选项卡栏,所以我打算在每个活动中使用 activitygroup 和 getLocalActivityManager 像这样
Intent intent = new Intent(thisActivity, activity2.class);
mView = getLocalActivityManager().startActivity("id", intent
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
)
.getDecorView();
setContentView(mView);
我将此activity1的后退按钮设置为
mView.dispatchKeyEvent(event);
所以后退按钮的控制转到那个意图的活动2
然后在那个有意图的activity2后退按钮中,我覆盖到最后一个活动的意图,如@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK)) { //后退键按下 Log.d (this.getClass().getName(), "后退按钮被按下");
Intent intent = new Intent(getApplicationContext(),activity1.class);
mView = NearByActivity.mLocalActivityManager.startActivity("activity1", intent
.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
)
.getDecorView();
setContentView(mView);
return true;
}
return super.onKeyDown(keyCode, event);
}
它适用于 2 个活动,但不适用于选项卡中的 5 到 6 个活动,当我单击第 3 个活动的后退按钮时,它不会覆盖后退按钮,它使用 activity2 后退按钮并转到活动 1 而不是 2
如何在一个标签内容中执行 6 7 个意图来解决此问题