9

Je travaille sur un TabHost avec un WebView à l'intérieur de chaque fragment. Ce que je fais est:Android: TabHost - Transmission des paramètres aux fragments

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

Comment puis-je passer des paramètres à chaque fragment. Dans ce cas, je veux passer une URL à chaque fragment à l'intérieur du TabHost.

Thx à l'avance.

+0

Avez-vous trouvé cela? J'ai besoin de la même chose. Merci! –

+0

Je ne suis pas sûr. Je pense que j'ai implémenté une classe statique qui contient les données. Ou quelque chose comme ça. Actuellement je ne travaille plus sur ce projet particulier. –

Répondre

21

Enfin, j'obtiens la solution. Vous pouvez passer des paramètres en utilisant un paquet dans le dernier paramètre de "addTab" où vous avez "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); 
} 

Ensuite, dans le fragment, vous pouvez obtenir l'ensemble avec getArguments().

J'espère que ce sera utile pour quelqu'un dans le futur

+1

mais à l'intérieur du 'onCreateView()' du fragment, 'getArguments()' me donne toujours 'null', savez-vous pourquoi? – AbdelHady

+0

Vous devez le faire dans le onCreate –

+0

Désolé, c'était mon mauvais, j'ai oublié de le passer lors de l'instanciation de l'onglet dans mon tabListener :) – AbdelHady