TabHost并调用相同的活动

时间:2012-04-03 19:05:41

标签: android android-tabhost

我是Android框架的新手,我想知道是否可以从TabHost调用相同的活动?我有3个选项卡,每个选项卡填充一个列表但不同的值。我想过滤选项卡中的列表。从列表中构建每个选项卡的数据,这就是为什么我不想制作3个不同的Activity。可以使用TabHost和TabActivity类吗?

提前致谢!

Br,彼得

2 个答案:

答案 0 :(得分:0)

Example of using Android tabs with Views instead of Activities?

一种方法是创建三个选项卡,每个选项卡使用相同的内容布局(带有列表视图的东西),然后每当用户更改选项卡时(注册OnTabChangedListener)。清除当前列表视图并使用新数据重新加载。 OnTabChangedListener还会告诉您切换到哪个选项卡。

答案 1 :(得分:0)

您应该能够为每个标签指定相同的活动。为了让它过滤,我只会在意图上发送一个Extra值。

这样的事情:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tab_host_layout);

    TabHost tabHost = getTabHost();

    Intent intent1 = new Intent(this, MyActivity.class);
    intent1.putExtra("filter", 1);
    tabHost.addTab(tabHost.newTabSpec("tab1")
            .setIndicator("Tab1")
            .setContent(intent1));

    Intent intent2 = new Intent(this, MyActivity.class);
    intent2.putExtra("filter", 2);
    tabHost.addTab(tabHost.newTabSpec("tab2")
            .setIndicator("Tab2")
            .setContent(intent2));

}