2012-04-03 56 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)); 

}