Thursday, 15 April 2010

java - how to create views with an android layout with a PagerTitleStrip -



java - how to create views with an android layout with a PagerTitleStrip -

i'm writing android 4.0 project , created new activity pagertitlestrip.

so activity xml following:

<android.support.v4.view.viewpager xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/pager" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".menuactivity" > <!-- title strip display visible page title, page titles adjacent pages. --> <android.support.v4.view.pagertitlestrip android:id="@+id/pager_title_strip" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="top" android:background="#33b5e5" android:paddingbottom="4dp" android:paddingtop="4dp" android:textcolor="#fff" /> </android.support.v4.view.viewpager>

it created dummy section fregment in activity.java class

public class menuactivity extends fragmentactivity { /** * {@link android.support.v4.view.pageradapter} provide * fragments each of sections. utilize * {@link android.support.v4.app.fragmentpageradapter} derivative, * maintain every loaded fragment in memory. if becomes memory * intensive, may best switch * {@link android.support.v4.app.fragmentstatepageradapter}. */ sectionspageradapter msectionspageradapter; /** * {@link viewpager} host section contents. */ viewpager mviewpager; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_menu); // create adapter homecoming fragment each of 3 // primary sections of app. msectionspageradapter = new sectionspageradapter( getsupportfragmentmanager()); // set viewpager sections adapter. mviewpager = (viewpager) findviewbyid(r.id.pager); mviewpager.setadapter(msectionspageradapter); } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.activity_menu, menu); homecoming true; } /** * {@link fragmentpageradapter} returns fragment corresponding * 1 of sections/tabs/pages. */ public class sectionspageradapter extends fragmentpageradapter { public sectionspageradapter(fragmentmanager fm) { super(fm); } @override public fragment getitem(int position) { // getitem called instantiate fragment given page. // homecoming dummysectionfragment (defined static inner class // below) page number lone argument. fragment fragment = new dummysectionfragment(); bundle args = new bundle(); args.putint(dummysectionfragment.arg_section_number, position + 1); fragment.setarguments(args); homecoming fragment; } @override public int getcount() { // show 3 total pages. homecoming 3; } @override public charsequence getpagetitle(int position) { switch (position) { case 0: homecoming getstring(r.string.title_section1).touppercase(); case 1: homecoming getstring(r.string.title_section2).touppercase(); case 2: homecoming getstring(r.string.title_section3).touppercase(); } homecoming null; } } /** * dummy fragment representing section of app, * displays dummy text. */ public static class dummysectionfragment extends fragment { /** * fragment argument representing section number * fragment. */ public static final string arg_section_number = "section_number"; public dummysectionfragment() { } @override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { // create new textview , set text fragment's section // number argument value. textview textview = new textview(getactivity()); textview.setgravity(gravity.center); textview.settext(integer.tostring(getarguments().getint( arg_section_number))); homecoming textview; } } }

in dummysectionfragment, instead of creating textview , returning it. design layout of each of pages (here have 3 pages configured) in seperate xml file. how can configure ?

so if understand correctly i'll homecoming gridview listview or view returned loaded xml instead of textview loaded here. how can ?

thank you!

create 3 fragment classes. have each manage own ui. have sectionspageradapter instantiate proper fragment class based upon position.

java android

No comments:

Post a Comment