如何在Android标签之间进行通信

时间:2009-07-06 19:27:56

标签: android user-interface android-activity tabs

我试图为我的Android应用程序设置一些选项卡,但我卡住了。

我找不到标签之间的通信方式..

我有两个标签。


|搜索结果|

搜索标签只显示一个TextEdit和一个“搜索”按钮。 点击搜索按钮会使我的应用程序更改为结果选项卡并显示结果。

我已将标签添加为使用新意图

的活动
TabHost host=getTabHost();  

host.addTab(host.newTabSpec("one")  
   .setIndicator("Search")  
   .setContent(new Intent(this, SearchTabActivity.class)));  
host.addTab(host.newTabSpec("Result")  
   .setIndicator("Android")  
   .setContent(new Intent(this, ResultTabActivity.class)));  

现在我无法找到SearchTabActivity显示ResultTabActivity并改变其视图的方法......

我期待任何提示。

1 个答案:

答案 0 :(得分:5)

肯定想重新考虑使用“活动”作为标签的内容。更标准的方法是使用一个Activity,它使用Tabs仅在选择特定选项卡时显示部分布局。

Android文档有一个很好的工作示例,请查看Hello, TabWidget

<强>替代

如果由于某种原因你确实需要使用Activities,你可以通过在你使用的Intent中为extras包添加值来打开每个Activity,或者通过扩展Application类来在它们之间传递信息。

通过扩展Application类(并将其作为Singleton实现),您将获得一个在任何应用程序组件存在时都存在的对象,从而提供在应用程序组件之间存储和传输复杂对象数据的集中位置。