in middle of layout want have 2 tabs choose between viewing 2 different lists in second half of screen. how can this?
here image illustrating wish achieve. image has questions tab , answers tab in middle of screen. depending on tab select shows different listview:

i wish achieve exact same thing.
i tried doing tabhost widget, life of me couldn't rid of title bar (i tried selecting themes no title bar, tried setting theme in manifest no title bar one)
i tried make action bar tabs, @ top of screen....
how can create tabs in middle of screen in image?
i had same today! tried pagertabstrip, because thought can't use tablayout if it's not toolbar. turns out wrong, , it's used in google iosched. can put tablayout + viewpager wherever want.
i know want custom tabs, easier customize if buttons, in opinion it's better use tablayout + viewpager, since makes things more scalable.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingbottom="@dimen/activity_vertical_margin" android:paddingleft="@dimen/activity_horizontal_margin" android:paddingright="@dimen/activity_horizontal_margin" android:paddingtop="@dimen/activity_vertical_margin"> <linearlayout android:id="@+id/top_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:orientation="horizontal"></linearlayout> <relativelayout android:id="@+id/bottom_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@+id/top_layout" android:layout_weight="1"> <android.support.design.widget.tablayout android:id="@+id/pager_header" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center" android:minheight="60dp" app:tabgravity="fill" app:tabindicatorcolor="@color/coloraccentsecondary" app:tabmode="fixed" app:tabselectedtextcolor="@color/coloraccentsecondary" app:tabtextappearance="@style/tournamentwaitingtimertabtextappearance" /> <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" android:layout_below="@+id/pager_header"></android.support.v4.view.viewpager> </relativelayout> </linearlayout> mainactivity class:
public class mainactivity extends appcompatactivity { @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); // locate viewpager in activity_main.xml viewpager viewpager = (viewpager) findviewbyid(r.id.pager); // set viewpageradapter viewpager viewpageradapter adapter = new viewpageradapter(getsupportfragmentmanager()); adapter.addfrag(new leftfragment(), "players"); adapter.addfrag(new rightfragment(), "prizes"); viewpager.setadapter(adapter); tablayout mtablayout = (tablayout) findviewbyid(r.id.pager_header); mtablayout.setupwithviewpager(viewpager); } class viewpageradapter extends fragmentstatepageradapter { private final list<fragment> mfragmentlist = new arraylist<>(); private final list<string> mfragmenttitlelist = new arraylist<>(); public viewpageradapter(fragmentmanager manager) { super(manager); } @override public fragment getitem(int position) { return mfragmentlist.get(position); } @override public int getcount() { return mfragmentlist.size(); } public void addfrag(fragment fragment, string title) { mfragmentlist.add(fragment); mfragmenttitlelist.add(title); } @override public charsequence getpagetitle(int position) { return mfragmenttitlelist.get(position); } } } you can change adapter use, doesn't matter.
to customize tabs, i'd take @ this amazing tutorial.
Comments
Post a Comment