Friday 15 April 2011

java - Tabhost- Android ViewBadger badge issue -



java - Tabhost- Android ViewBadger badge issue -

in application want show badges on 1 tab. used android-viewbadger.jar file android viewbadger setting badge on tab-2 means notification tab , setting badge

view target = findviewbyid(r.id.tab2); badge1 = new badgeview(this, target); badge1.settext("0"); badge1.setbadgeposition(badgeview.position_bottom_right); badge1.toggle();

when set badge show on right side

i have tried alter tabs number

view target = findviewbyid(r.id.tab1); view target = findviewbyid(r.id.tab2); view target = findviewbyid(r.id.tab3); view target = findviewbyid(r.id.tab4);

but show on right side here code using

@override protected void oncreate(bundle arg0) { // todo auto-generated method stub getactionbar().hide(); super.oncreate(arg0); setcontentview(r.layout.fr_tabs); mainactivity_context = mainactivity.this; mtabhost=(tabhost)findviewbyid(android.r.id.tabhost); mtabhost.setup();/// starts tabs mtabhost.setontabchangedlistener(this); mtabhost.addtab(newtab(tab_home,r.string.home,r.id.tab1,r.drawable.people_icon_dark)); mtabhost.addtab(newtab(tab_inbox, r.string.inbox, r.id.tab2, r.drawable.main_profile_icon)); mtabhost.addtab(newtab(tab_profile, r.string.profile, r.id.tab3, r.drawable.notification_icon_ark)); mtabhost.addtab(newtab(tab_setting, r.string.setting, r.id.tab4, r.drawable.messages_icon_dark)); mtabhost.addtab(newtab(tab_videos, r.string.video, r.id.tab5, r.drawable.more_icon_dark)); } private tabspec newtab(string tag, int label_id, int tab_content_id, int res) { // todo auto-generated method stub view indicator=layoutinflater.from(this).inflate(r.layout.tab_sample, null,false); ((textview) indicator.findviewbyid(r.id.tex)).settext(label_id); ((imageview) indicator.findviewbyid(r.id.img)).setimageresource(res); ///we utilize tabspec tabspec tabspec=mtabhost.newtabspec(tag); tabspec.setindicator(indicator); tabspec.setcontent(tab_content_id); view target = findviewbyid(r.id.tab2); badge1 = new badgeview(this, target); badge1.settext("0"); badge1.setbadgeposition(badgeview.position_bottom_right); badge1.toggle(); homecoming tabspec; } @override public void ontabchanged(string tabid) { // todo auto-generated method stub if(tab_home.equals(tabid)){ people frg=new people(); bundle b=new bundle(); b.putstring("tag", tabid); frg.setarguments(b); updatetab(frg,r.id.tab1,true); current_tab=1; return; } if(tab_inbox.equals(tabid)){ profile frg=new profile(); bundle b=new bundle(); b.putstring("tag", tabid); frg.setarguments(b); updatetab(frg,r.id.tab2,true); current_tab=1; return; } if(tab_videos.equals(tabid)){ more frg=new more(); bundle b=new bundle(); b.putstring("tag", tabid); frg.setarguments(b); updatetab(frg,r.id.tab5,true); current_tab=4; return; } if(tab_profile.equals(tabid)){ intent intent = new intent(this, notifications.class); startactivity(intent); } } private void updatetab(fragment frg, int place_holder, boolean addtobackstack) { // todo auto-generated method stub fragmenttransaction ft=getfragmentmanager().begintransaction(); ft.replace(place_holder, frg); if(addtobackstack) ft.addtobackstack(null); ft.commit(); } public void launchnewfragment(fragment frg1, int containerid) { updatetab(frg1, containerid,true); } public void launchfinishfragment(fragment frg1, int containerid,boolean b) { updatetab(frg1, containerid,true); } }

checking enable layout bound alternative setting=>developer alternative => layout bound

when utilize public view getchildtabviewat (int index); method tabwidget documentation

view target = findviewbyid(r.id.tab2); target = mtabhost.gettabwidget().getchildtabviewat(2); output

java android

No comments:

Post a Comment