android - Actionbar tabs are repeating during switching between fragments -
navigation drawer contains 4 items , each item contains 4 actionbar tabs ,while switching between menu items means if click on menu item 2 number of actionbar items changing 8 , if click on menu item3 number of actionbar tabs changing 12 ,how o stop repeation of tabs.here code
public class topicsfragment extends fragment {
public topicsfragment() { } // declare tab variable actionbar.tab alltopics, newcontent, staffpicks, popular, recommended; fragment fragmenttab1 = new fragmenttab1(); fragment fragmenttab2 = new fragmenttab2(); fragment fragmenttab3 = new fragmenttab3(); fragment fragmenttab4 = new fragmenttab2(); fragment fragmenttab5 = new fragmenttab1(); @override public view oncreateview(layoutinflater inflater, viewgroup tabs, bundle savedinstancestate) { view rootview = inflater.inflate(r.layout.fragment_topics, tabs, false); actionbar actionbar = ((actionbaractivity) getactivity()) .getsupportactionbar(); // create actionbar tabs actionbar.setnavigationmode(actionbar.navigation_mode_tabs); // set tab icon , titles alltopics = actionbar.newtab().seticon(r.drawable.tab1); newcontent = actionbar.newtab().seticon(r.drawable.tab1); staffpicks = actionbar.newtab().seticon(r.drawable.tab1); popular = actionbar.newtab().seticon(r.drawable.tab1); recommended = actionbar.newtab().seticon(r.drawable.tab1); // set tab listeners alltopics.settablistener(new tablistener(fragmenttab1)); newcontent.settablistener(new tablistener(fragmenttab2)); staffpicks.settablistener(new tablistener(fragmenttab3)); popular.settablistener(new tablistener(fragmenttab2)); recommended.settablistener(new tablistener(fragmenttab2)); // add tabs actionbar actionbar.addtab(alltopics); actionbar.addtab(newcontent); actionbar.addtab(staffpicks); actionbar.addtab(popular); actionbar.addtab(recommended); return rootview; } }
that problem adding tabs when go in topicsfragment call oncreateview again , executing adding of tabs actionbar adding set of tabs current tabs.
solution:
you need check first if number of tabs 0 in actionbar.
sample:
actionbar.removealltabs(); if(actionbar.gettabcount() == 0) { actionbar.setnavigationmode(actionbar.navigation_mode_tabs); // set tab icon , titles alltopics = actionbar.newtab().seticon(r.drawable.tab1); newcontent = actionbar.newtab().seticon(r.drawable.tab1); staffpicks = actionbar.newtab().seticon(r.drawable.tab1); popular = actionbar.newtab().seticon(r.drawable.tab1); recommended = actionbar.newtab().seticon(r.drawable.tab1); // set tab listeners alltopics.settablistener(new tablistener(fragmenttab1)); newcontent.settablistener(new tablistener(fragmenttab2)); staffpicks.settablistener(new tablistener(fragmenttab3)); popular.settablistener(new tablistener(fragmenttab2)); recommended.settablistener(new tablistener(fragmenttab2)); // add tabs actionbar actionbar.addtab(alltopics); actionbar.addtab(newcontent); actionbar.addtab(staffpicks); actionbar.addtab(popular); actionbar.addtab(recommended); }
Comments
Post a Comment