android - Actionbar Tab in API 10 -
android - Actionbar Tab in API 10 -
i have app 4 actionbar's tabs. although imported android.support.v7.app. actionbar library, it's displayed in api 16 device not in api 10 device. what's solution here? main activity:
import android.app.actionbar; import android.support.v4.app.fragmentmanager; import android.support.v4.view.viewpager; import android.support.v4.view.viewpager.onpagechangelistener; import android.support.v7.app.actionbar.tablistener; import android.support.v7.app.actionbaractivity; public class mainactivity extends actionbaractivity { public android.support.v7.app.actionbar actionbar; public viewpager viewpager; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); actionbar = getsupportactionbar(); actionbar.setdisplayshowhomeenabled(false); actionbar.setdisplayshowtitleenabled(false); actionbar.setnavigationmode(actionbar.navigation_mode_tabs); viewpager = (viewpager) findviewbyid(r.id.pager); fragmentmanager fm = getsupportfragmentmanager(); addpagechangelistener(); myfragmentpageradapter fragmentpageradapter = new myfragmentpageradapter(fm); viewpager.setadapter(fragmentpageradapter); addactionbarlistener(); } public void addpagechangelistener() { viewpager.onpagechangelistener pagechangelistener = new onpagechangelistener() { @override public void onpageselected(int position) { actionbar.setselectednavigationitem(position); } @override public void onpagescrollstatechanged(int arg0) { } @override public void onpagescrolled(int arg0, float arg1, int arg2) { } }; viewpager.setonpagechangelistener(pagechangelistener); } public void addactionbarlistener() { android.support.v7.app.actionbar.tablistener listener = new tablistener() { @override public void ontabunselected( android.support.v7.app.actionbar.tab arg0, android.support.v4.app.fragmenttransaction arg1) { } @override public void ontabselected(android.support.v7.app.actionbar.tab tab, android.support.v4.app.fragmenttransaction arg1) { viewpager.setcurrentitem(tab.getposition()); } @override public void ontabreselected( android.support.v7.app.actionbar.tab arg0, android.support.v4.app.fragmenttransaction arg1) { } }; android.support.v7.app.actionbar.tab tab = actionbar.newtab() .settablistener(listener); tab.setcustomview(r.layout.search); actionbar.addtab(tab); tab = actionbar.newtab().settablistener(listener); tab.setcustomview(r.layout.filter); actionbar.addtab(tab); tab = actionbar.newtab().settablistener(listener); tab.setcustomview(r.layout.favorite); actionbar.addtab(tab); tab = actionbar.newtab().settablistener(listener); tab.setcustomview(r.layout.info); actionbar.addtab(tab); } }
mypagerfragmentadapter:
import android.os.bundle; import android.support.v4.app.fragment; import android.support.v4.app.fragmentmanager; import android.support.v4.app.fragmentpageradapter; public class myfragmentpageradapter extends fragmentpageradapter { public final int page_count = 4; public myfragmentpageradapter(fragmentmanager fm) { super(fm); } @override public fragment getitem(int i) { // todo auto-generated method stub bundle info = new bundle(); switch (i) { case 0: searchfragment searchfragment = new searchfragment(); homecoming searchfragment; case 1: filterfragment filterfragment = new filterfragment(); homecoming filterfragment; case 2: favoritefragment favoritefragment = new favoritefragment(); homecoming favoritefragment; case 3: infofragment infofragment = new infofragment(); homecoming infofragment; } homecoming null; } @override public int getcount() { homecoming page_count; } }
main activity layout:
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/container" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <android.support.v4.view.viewpager xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/pager" android:layout_width="match_parent" android:layout_height="match_parent" />
try replacing import android.app.actionbar;
with 1 import android.support.v7.app.actionbar;.
also check application theme should android:theme="@style/theme.appcompat" in androidmanifest.xml file
refer below link more details...
http://wptrafficanalyzer.in/blog/swipable-navigation-tabs-using-actionbarcompat-library/
android tabs navigation android-actionbar
Comments
Post a Comment