我有一个Android应用程序,它有四个标签(我使用带有TabHost和TabSpecs的主TabActivity )。在我的一个子活动(在选项卡中打开的活动)中,我需要打开选项卡,而不是通过单击选项卡标题,我不知道如何做到这一点。例如,我的活动中有一个按钮,当我单击它时,它会打开一个不同的选项卡。目前,这是我所做的:
Intent intent = new Intent(myActivity.this, myTabActivity.class);
intent.putExtra("ComeFrom", true);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
然后在TabActivity中,如果我真的读到了"ComeFrom“额外的内容,我打开了愿望标签,但问题是它会杀死所有其他的活动。所以,如果有人知道更好的(更干净的)方法,请告诉我…
发布于 2010-10-15 21:22:38
你必须使用TabHost的"setCurrentTab(...)“就为了这个。在我的一个项目中,我在main活动(带有TabHost的那个)中创建了一个静态方法,名为"swtichToTab(int tab)“。在我的子活动中(选项卡中的那些),可以只调用"MainActivity.switchToTab()“来触发切换。
这可能不是最干净的方法,我相信你也可以使用广播意图来实现这一点。
发布于 2011-02-04 01:02:25
(我想)找到了一个更简单的答案:
TabActivity上的
公共类TheActivity扩展了TabActivity { public static TheActivity self;... @Override public void (捆绑包savedInstanceState) {self=this;
tabHost.setCurrentTab(0);;TabHost tabHost =TheActivity.self.getTabHost()
对我来说没问题,希望能为别人服务!
发布于 2010-10-15 21:30:14
您可以创建BroadcastReceiver并发送带有选项卡索引的广播作为额外内容
https://stackoverflow.com/questions/3942393
复制相似问题