我正在使用 TabGroupActivity 开发应用程序。我通过 tabhost activies 启动,因此每个选项卡中可以有多个 Intent:
public class MainTabActivity extends TabActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_tab);
final TabHost tabHost = getTabHost();
tabHost.addTab(tabHost.newTabSpec("tab2")
.setIndicator("Que")
.setContent(new Intent(this, TabGroup2Activity.class)));
}
TabGroup2Activity 类:
public class TabGroup2Activity extends TabGroupActivity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent i = new Intent(getApplicationContext(),QueActivity.class);
startChildActivity("categorias", i);
}
}
我从这个页面得到了 TabGroupActivity:
我的问题是当我单击第二个选项卡时,我打开了 QueActivity.class。它基本上是一个列表视图,其中包含从数据库中检索的项目。当我单击一行时,我打开了一个新意图,其中包含 Bundle 对象传递的信息。问题是当我在这个意图中点击后退按钮时,我回到 QueActivity Intent,它在 onPause() 事件上,但它进入 onStop()、onDestroy() 和 onStart() 事件进入其他状态(我认为 onResume)不需要再次创建。问题是再次创建的 Intent 执行 SQL 查询和我不再需要执行的事情。我想按返回并以一种我不必再次创建它的方式检索最后一个意图。我希望我已经成功地解释了自己。