0

我的 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 个意图来解决此问题

4

1 回答 1

-1

@Override
public void onBackPressed() { try{ Listentab.group.back(); }catch(IndexOutOfBoundsException e) { 完成(); }

在您扩展活动组的活动中使用它

于 2012-06-18T11:09:13.333 回答