9

我正在使用每個片段內部的WebView的TabHost。 我要做的是:Android:TabHost - 將參數傳遞給片段

for(int i = 0; i < numberOfTabs; i++){ 
     mTabManager.addTab(mTabHost.newTabSpec(tabNames[i]).setIndicator(tabNames[i]), 
       Web.class, null); 
} 

如何將參數傳遞給每個片段。在這種情況下,我想將一個URL傳遞給TabHost中的每個Fragment。

Thx提前。

+0

您是否明白這一點?我需要相同的。謝謝! –

+0

我不確定。我想我實現了一個包含數據的靜態類。或類似的東西。目前我不再在這個特定的項目上工作。 –

回答

21

最後我得到解決方案。您可以在「addTab」的最後一個參數中使用Bundle傳遞參數,其中您有「null」。

for(int i = 0; i < numberOfTabs; i++){ 
     Bundle b = new Bundle(); 
     b.put... 
     mTabManager.addTab(mTabHost.newTabSpec(tabNames[i]).setIndicator(tabNames[i]), 
       Web.class, b); 
} 

然後在片段中,您可以使用getArguments()獲得Bundle。

我希望它對未來的某個人有用

+1

但是在片段的'onCreateView()'中,'getArguments()'總是給我'null',你知道爲什麼嗎? – AbdelHady

+0

喲必須在onCreate中做到這一點 –

+0

對不起,這是我的不好,我忘了在實例化tabListener中的選項卡時傳遞它:) – AbdelHady