3

我有一个包含 ActivityGroup 的 TabActivity 应用程序。每个选项卡都可以正常工作,但是对于一个特定的选项卡,我想在单击它时返回第一个子活动(每当我们处于此选项卡的子活动或另一个选项卡内时)。

我试图在我的 ActivityGroup 的 onResume 上启动我想要的活动,当我在另一个选项卡上时它可以工作,但当我在这个选项卡上时,它没有子活动。

我是否必须为此选项卡使用除 FLAG_ACTIVITY_CLEAR_TOP 之外的其他意图标志?有人有线索吗 ?

谢谢。

4

1 回答 1

1

通常使用 ActivityGroup 你有某种历史。

假设您的历史是:

ArrayList<View> history;

当然历史需要被初始化并有一些可以通过以下方式检索的视图:

getLocalActivityManager().startActivity(clazz.getName(), new Intent(this, clazz)).getDecorView();

其中 clazz 是您的子活动的类。因此,在当前 ActivityGroup 中单击时定义一个方法,如:

public void backToFirst() {
    int size = history.size();
    while (size > 1) {
        history.remove(size - 1);
        size = history.size();
    }
    setContentView(history.get(0));
}

希望我正确理解了您,这就是您正在寻找的答案。

于 2011-05-25T15:52:07.977 回答