java - From Json To ViewPager -


i'm trying pass data json file viewpager. have followed of advice given me here returns blank, without crashing.

the 4 files involved in this: 1. main fragment:

 public class fashionfeed  extends fragment {   viewpager viewpager; pageradapter adapter;  thepageradapter newdapter;   public static final string url =         "http://celebirious.com/bey/data/space.json";   @override public view oncreateview(layoutinflater inflater, viewgroup container,                          bundle savedinstancestate) {        view v = inflater.inflate(r.layout.fragment_whats_hot, null);       // locate viewpager in viewpager_main.xml     viewpager = (viewpager) v.findviewbyid(r.id.pager);      viewpager.setcliptopadding(false);     viewpager.setpadding(4, 0, 4, 0);      int margin = (int) typedvalue.applydimension(typedvalue.complex_unit_dip, 20 * 2, getresources().getdisplaymetrics());     viewpager.setpagemargin(-margin);      new simpletask().execute(url);       return v;  }  private class simpletask extends asynctask<string, void, string> {      @override     protected void onpreexecute() {         // create show progressbar     }      protected string doinbackground(string... urls)   {         string result = "";         try {              httpget httpget = new httpget(urls[0]);             httpclient client = new defaulthttpclient();              httpresponse response = client.execute(httpget);              int statuscode = response.getstatusline().getstatuscode();              if (statuscode == 200) {                 inputstream inputstream = response.getentity().getcontent();                 bufferedreader reader = new bufferedreader                         (new inputstreamreader(inputstream));                 string line;                 while ((line = reader.readline()) != null) {                     result += line;                 }             }          } catch (clientprotocolexception e) {          } catch (ioexception e) {          }         return result;     }      protected void onpostexecute(string jsonstring)  {         showdata(jsonstring);     } }  private void showdata(string jsonstring) {     gson gson = new gson();     style style = gson.fromjson(jsonstring, style.class);     list<space> space = style.getspace();       newdapter = new thepageradapter(getactivity(), space);     viewpager.setadapter(newdapter);  }   } 

the adapter extending pager:

    public class thepageradapter extends pageradapter {     list<space> list;     layoutinflater inflater;      context context;        @override      public int getcount() {     return list.size();     }       @override      public boolean isviewfromobject(view view, object object) {     return false;      }      public thepageradapter(context context,list<space> list) {     this.list = list;     this.context = context; // red      }        @override      public object instantiateitem(viewgroup container, int position) {      // declare variables     textview txtrank;     textview txtcountry;     textview txtpopulation;     imageview imgflag;      inflater = (layoutinflater) context             .getsystemservice(context.layout_inflater_service);     view itemview = inflater.inflate(r.layout.styledeets, container,             false);      // locate textviews in viewpager_item.xml     txtrank = (textview) itemview.findviewbyid(r.id.date);     txtcountry = (textview) itemview.findviewbyid(r.id.where);     txtpopulation = (textview) itemview.findviewbyid(r.id.info);      // capture position , set textviews     txtrank.settext(list.get(position).getname());     txtcountry.settext(list.get(position).getdates());     txtpopulation.settext(list.get(position).getinfo());       string url = (list.get(position).getavatarurl());      imgflag = (imageview) itemview.findviewbyid(r.id.photo);       picasso.with(context)             .load(url)             .placeholder(r.mipmap.ic_launcher)             .error(r.drawable.ic_launcher_gmail)             .fit()             .tag(context)             .into(imgflag);       // locate imageview in viewpager_item.xml     // capture position , set imageview     //imgflag.setimageresource(flag[position]);      // add viewpager_item.xml viewpager     ((viewpager) container).addview(itemview);      return itemview; }  @override public void destroyitem(viewgroup container, int position, object object) {     // remove viewpager_item.xml viewpager     ((viewpager) container).removeview((relativelayout) object);  }  } 

gson data retreived jsonschema2pojo.org:

space.java

public class space {  @expose private string name; @expose private string dates; @expose private string type; @expose private string social; @expose private string info; @serializedname("avatar_url") @expose private string avatarurl;  /**  *  * @return  * name  */ public string getname() {     return name; }  /**  *  * @param name  * name  */ public void setname(string name) {     this.name = name; }  /**  *  * @return  * dates  */ public string getdates() {     return dates; }  /**  *  * @param dates  * dates  */ public void setdates(string dates) {     this.dates = dates; }  /**  *  * @return  * type  */ public string gettype() {     return type; }  /**  *  * @param type  * type  */ public void settype(string type) {     this.type = type; }  /**  *  * @return  * social  */ public string getsocial() {     return social; }  /**  *  * @param social  * social  */ public void setsocial(string social) {     this.social = social; }  /**  *  * @return  * info  */ public string getinfo() {     return info; }  /**  *  * @param info  * info  */ public void setinfo(string info) {     this.info = info; }  /**  *  * @return  * avatarurl  */ public string getavatarurl() {     return avatarurl; }  /**  *  * @param avatarurl  * avatar_url  */ public void setavatarurl(string avatarurl) {     this.avatarurl = avatarurl; } 

lastly, style.java

 public class style {  @expose private list<space> space = new arraylist<space>();  /**  *  * @return  * space  */ public list<space> getspace() {     return space; }  /**  *  * @param space  * space  */ public void setspace(list<space> space) {     this.space = space; }   } 

all xml data linked 'cause works when retrieving data locally. wrong?

i figured out !!!!! how silly of me.

was

 @override  public boolean isviewfromobject(view view, object object) { return false;  } 

should have been:

@override public boolean isviewfromobject(view view, object object) {     return view == ((relativelayout) object); } 

Comments

Popular posts from this blog

angularjs - ADAL JS Angular- WebAPI add a new role claim to the token -

php - CakePHP HttpSockets send array of paramms -

node.js - Using Node without global install -