android - Swiping through unlimited fragments - Confused over ViewPager process -
i trying create app pulls these ron swanson quotes api , displays them in fragment. when fragment swiped, app go fragment , display new quote. process supposed repeat indefinitely.
instead, app loads blank screen. have placed button , textview on fragment, each initial texts determine if has loads, nothing ever appears.
p.s.: may notice comical variable names , comments. didn't consider may need when writing (it's personal app learning).
p.p.s.: i'm not site still up, shouldn't affect @ point.
thanks can help. below 1) single java file of app 2) activity_main.xml file.
@targetapi(build.version_codes.honeycomb) public class mainactivity extends fragmentactivity { @suppresswarnings("deprecation") @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); // viewpager pagingron = (viewpager) findviewbyid(r.id.pager); pageradapter ronspageradapter = new custompageradapter(getsupportfragmentmanager()); pagingron.setadapter(ronspageradapter); pagingron.setonpagechangelistener(new viewpager.onpagechangelistener() { @override public void onpagescrollstatechanged(int arg0) { // toxdo auto-generated method stub } @override public void onpagescrolled(int arg0, float arg1, int arg2) { // todo auto-generated method stub } @override public void onpageselected(int arg0) { // todo auto-generated method stub } }); //initial asynctask setting first quote of great swan ronswansetup ronswansonog = new ronswansetup(); ronswansonog.execute(); } private class ronswansetup extends asynctask<void, string, void> { @override protected void doinbackground(void... socialism) { string ronquoteson = ""; //ron's wonderful first quote string rondotcom = "http://ron-swanson-quotes.herokuapp.com/quotes"; //the website fetching ron's wonderful quotes string[] ronsquotes = new string[1]; //ron speaks seldomly, pinnacle of wisdom try { url ronsurl = new url(rondotcom); httpurlconnection ronsconnection = (httpurlconnection) ronsurl.openconnection(); bufferedreader thanksron = new bufferedreader(new inputstreamreader(ronsconnection.getinputstream())); string current; while((current = thanksron.readline()) != null) { ronquoteson += current; } ronsquotes[0] = ronquoteson; } catch (exception sorryron) { ronsquotes[0] = "the app appears unable simplest things correctly - maybe try restarting it?"; sorryron.printstacktrace(); } publishprogress(ronsquotes); return null; } protected void onprogressupdate(string... ronsquote) { textview ronstext = (textview) findviewbyid(r.id.text); string ronqouteson = ronsquote[0]; ronstext.settext("not ron's quote");//for testing } } public class custompageradapter extends fragmentpageradapter { public custompageradapter(fragmentmanager fm) { super(fm); } @override // method returns fragment associated // specified position. // called when adapter needs fragment // , not exist. public fragment getitem(int position) { // create fragment object ronfragson fragment = new ronfragson(); // attach data we'll // use populate our fragment layouts bundle args = new bundle(); args.putint("page_position", position + 1); // set arguments on fragment // fetched fragment.setarguments(args); return fragment; } @override public int getcount() { return 3; } } public class ronfragson extends fragment { @override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { // inflate layout resource that'll returned view rootview = inflater.inflate(r.layout.swansons_fragment, container, false); // arguments supplied when // fragment instantiated in // custompageradapter bundle args = getarguments(); ((textview) rootview.findviewbyid(r.id.text)).settext("page"); return rootview; } } }
<horizontalscrollview android:id="@+id/horizontal_swangrid" android:layout_width="wrap_content" android:layout_height="0dp" android:layout_weight="40" xmlns:android="http://schemas.android.com/apk/res/android"> <!-- don't think necessary, don't want rid of in case i'm wrong <linearlayout android:id="@+id/swanson_cant_container" android:layout_width="wrap_content" android:layout_height="match_parent" android:orientation="horizontal" > <textview android:id="@+id/ronswan1stquote" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <textview android:id="@+id/ronswan2ndquote" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <textview android:id="@+id/ronswan3rdquote" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </linearlayout> --> <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" /> </horizontalscrollview>
Comments
Post a Comment