2012-04-03 32 views
0

我是新来的android框架,我不知道是否有可能从一个TabHost调用同一个活动?我有3个选项卡,每个选项卡都填充一个列表,但不同的值。我想过滤标签中的列表。每个选项卡的数据都是从列表中创建的,这就是为什么我不想制作3个不同的活动。它可以用TabHost和TabActivity类吗?TabHost并调用相同的活动

在此先感谢!

BR,彼得

回答

0

做的是创建的每个使用相同的内容布局(以列表视图东西)的三个选项卡,然后每当用户更改选项卡(注册OnTabChangedListener)Example of using Android tabs with Views instead of Activities?

的一种方式。清除当前列表视图并用新数据重新加载它。 OnTabChangedListener还会告诉你切换到哪个选项卡。

0

您应该能够为每个选项卡指定相同的活动。为了让它过滤,我只会在意图上发送额外的值。

事情是这样的:

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)); 

}