मेरे पास एक ऐसी गतिविधि है जिसमें एक टैबहोस्ट है जिसमें टैबस्पेक्स का एक सेट होता है जिसमें एक सूचीदृश्य होता है जिसमें टैब द्वारा प्रदर्शित किए जाने वाले आइटम होते हैं। जब प्रत्येक टैबस्पेक बनाया जाता है, तो मैंने टैब हेडर में प्रदर्शित होने के लिए आइकन सेट किया है।एंड्रॉइड टैब आइकन अपडेट करना
TabSpecs एक setupTabs()
विधि है जो टैब की उपयुक्त संख्या बनाने के लिए लूप के भीतर इस तरह से बनाई गई हैं:
TabSpec ts = mTabs.newTabSpec("tab");
ts.setIndicator("TabTitle", iconResource);
ts.setContent(new TabHost.TabContentFactory(
{
public View createTabContent(String tag)
{
...
}
});
mTabs.addTab(ts);
जानने के कुछ मामलों में जहां मैं आइकन जो प्रदर्शित किया जाता है परिवर्तित करने के लिए सक्षम होना चाहते हैं कर रहे हैं मेरे कार्यक्रम के निष्पादन के दौरान प्रत्येक टैब में। वर्तमान में मैं सभी टैब हटा रहा हूं, और उपरोक्त कोड को दोबारा बनाने के लिए फिर से कॉल कर रहा हूं।
mTabs.getTabWidget().removeAllViews();
mTabs.clearAllTabs(true);
setupTabs();
क्या सभी टैब को हटाने और फिर से बनाने के बिना प्रदर्शित किए जा रहे आइकन को प्रतिस्थापित करने का कोई तरीका है?
माइनर सुधार - उपयोग: TabWidget.getChildTabViewAt (..) getChildAt के बजाय (...) – tonys