android - 在选项卡组 Activity 中维护子 Activity 的状态

标签 android tabs tabactivity activitygroup

我关注了this我的应用程序教程。

我有: 选项卡 1:Tabgroupactivity1>(startchildactivity)MainActivty>(startchildactivity)ListActivity>(startchildactivity)DetailActivity

同样我还有另外两个标签。

问题是,当我从以下任何 Activity 返回到前一个 Activity 时,它(前一个)会重新启动。

我也曾尝试使用 SINGLE_TOP 和 SINGLE_TASK 启动子 Activity ,但在此只有一次我可以完成流程

第二次它不调用后续(下一个/子) Activity

那么当它调用子 Activity 并返回时,我如何保持当前 Activity 状态?

我正在使用 listactivty 的以下 Intent onclick:

Intent myintent = new Intent(getParent(),Second.class);
myintent.putExtra("id",favadapter.getItem(position).id.toString());
TabGroupActivity parentFav = (TabGroupActivity)getParent();
parentFav.startChildActivity("FavActivity", myintent);

最佳答案

实际上 TabGroupActivity 在 android 2.1 和 2.2 中有一个问题, Activity 没有正确地从堆栈中删除导致我们的实例每次都重新启动。

为了克服这个问题,我们使用 SINGLE_TOP 和 SINGLE_TASK,即使它会导致另一个问题,但只有一个实例运行而不是第二次运行,因为在子完成时我们这样做了,

Intent lastIntent = manager.getActivity(lastId).getIntent();
        Window newWindow = manager.startActivity(lastId, lastIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP));
        setContentView(newWindow.getDecorView());

意味着它删除所有 lastID Intent 并带来最新的 Intent ,因为您的 lastId(在启动 Activity .startChildActivity("FavActivity", myintent); 时使用)对于多个实例是相同的。

为了允许您的子 Activity 运行第二次或多次运行,请使用Dynamic intent ID 启动子 Activity。

例如,

Intent myintent = new Intent(getParent(),Second.class);
myintent.putExtra("id",favadapter.getItem(position).id.toString());
TabGroupActivity parentFav = (TabGroupActivity)getParent();
parentFav.startChildActivity("FavActivity"+System.currentTimemillis(), myintent);

关于android - 在选项卡组 Activity 中维护子 Activity 的状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8544250/

相关文章:

android - 如何从子 Activity 调用 TabActivity 中的函数?

java - 如何创建具有多个静态库的 JNI Android Studio 项目

android - Android 中的 MVP - 在哪里放置 Google API 调用以获取位置服务?

java - 虽然 mod 1 不是 0 Android

android - UnitTesting Android TabActivity时获取Nullpointer异常

安卓。 TabActivity,在选项卡之间切换而不破坏 tabHost 的 Activity

android - 如何在 Android Compose 中找到两个 PaddingValue 的总和?

java - Android 2.3.3,使选项卡列表可滚动?

css - Primefaces 选项卡标题样式

javascript - 多个选项卡问题