Parsing wrong data from Json in android -


i parsing json data php server value getting in each tag not actual value of tag. value switched between each tags. json:

 {"feed":[{"userid":"7", "username":"anurag", "user_image":"http:\/\/xxxxxxxxxxxxxxxxx\/avatars\/ozone\/7_30_7_150_wp_20140330_044.jpg", "gender":"1", "is_read":"1", "sender_id":"7", "receiver_id":"11", "message_id":"67", "message":"hi ", "created_date":"2015-06-26 12:43:20", "r_id":"67", "status":"0"}]} 

i trying these values in custom adapter class this:

@override     public view getview(int position, view convertview, viewgroup parent) {         // todo auto-generated method stub           view vi = convertview;         viewholder holder;          if(convertview==null)              convertview = inflater.inflate(r.layout.ozone_message_inboxitem, null);          holder = new viewholder();          holder.ozonemsginboxfrom = (textview)convertview.findviewbyid(r.id.ozonemsginboxfrom);         holder.ozonemsginboxcontent1 = (textview)convertview.findviewbyid(r.id.ozonemsginboxcontent);         holder.ozonemsginboxdate1 = (textview)convertview.findviewbyid(r.id.ozonemsginboxdate);         holder.ozonemsginboxphoto1 = (imageview)convertview.findviewbyid(r.id.ozonemsginboxphoto);          holder.ozonemsginboxdate1.settext(feedlist.get(position).getusername());         //holder.ozonemsginboxcontent1.settext(feedlist.get(position).getmessage());         holder.ozonemsginboxfrom.settext(feedlist.get(position).getcreated_date());           int rounded_value = 120;           displayimageoptions options = new displayimageoptions.builder().cacheinmemory(true).cacheondisc(true).displayer(new roundedbitmapdisplayer(rounded_value)).build();          imageloader.getinstance().displayimage(feedlist.get(position).getcreated_date(), holder.ozonemsginboxphoto1,options);          return convertview;      }     public class viewholder {          public imageview ozonemsginboxphoto1;         textview  ozonemsginboxfrom, ozonemsginboxcontent1,ozonemsginboxdate1;     } 

as clear want display value of tag "username" in textview getting "created_date" , "user_image" in "created_date". , this, values switching there tags.

for more help, adding more main class , bean class here::

public class ozonemessageinboxfragment extends fragment{  private progressdialog pdialog;      ozonemessageinboxadapter adapter;     // creating json parser object     jsonparser jsonparser = new jsonparser();     arraylist<hashmap<string, string>> inboxlist;     arraylist<ozonemessageinbox_beans> feedlist = new arraylist<ozonemessageinbox_beans>();     // products jsonarray     jsonarray inbox;     jsonarray inboximage;     private pulltorefreshlistview ozone_msginbox_listview;     // inbox json url     private static final string inbox_url = "http://example.com/omessageinbox/id/";      // json node names     private static final string tag_feed = "feed";     private static final string tag_username = "username";     private static final string tag_userimage = "user_image";     private static final string tag_message = "message";     private static final string tag_date = "created_date";      apppreference mapppreference;     context context;      @override     public view oncreateview(layoutinflater inflater,             @nullable viewgroup container, @nullable bundle savedinstancestate) {         view view = inflater.inflate(r.layout.ozone_message_inbox, container, false);         initialisenoramlvariable();         initialiseview(view);         return view;      }     private void initialiseview(view view) {          ozone_msginbox_listview = (pulltorefreshlistview)view.findviewbyid(r.id.ozonemessageinbox);          // hashmap listview         inboxlist = new arraylist<hashmap<string, string>>();          ozone_msginbox_listview.setonrefreshlistener(new onrefreshlistener(){              @override             public void onrefresh() {                  ozone_msginbox_listview.postdelayed(new runnable() {                      @override                     public void run() {                         ozone_msginbox_listview.onrefreshcomplete();                         feedlist = new arraylist<ozonemessageinbox_beans>();                         new loadinboxmsgozone().execute();                         adapter.notifydatasetchanged();                     }                 }, 2000);             }         });         new loadinboxmsgozone().execute();     }      /**      * background async task load inbox messages making http request      * */     class loadinboxmsgozone extends asynctask<string, string, string> {          public string finalvalue = "";          /**          * before starting background thread show progress dialog          * */         @override         protected void onpreexecute() {             super.onpreexecute();             pdialog = new progressdialog(context);             pdialog.setmessage("loading inbox ...");             pdialog.setcancelable(false);             pdialog.show();         }         /**          * getting inbox json          * */         protected string doinbackground(string... args) {             // building parameters             list<namevaluepair> params = new arraylist<namevaluepair>();               //http://m.sabakuch.com/api/omessageinbox/id/11/userid/11/key/ee8b3de3507e194e8c43eb9458bf728e             string url = inbox_url+mapppreference.getuserid()+"/"+"userid"+"/"+mapppreference.getuserid()+"/"+"key"+"/"+mapppreference.getserverkey();             log.d("urlll", url);             // getting json string url             jsonobject json = jsonparser.makehttprequest(url, "get",params);             log.d("general json ", json.tostring());             try {                 inbox = json.getjsonarray(tag_feed);                 // looping through messages                 (int = 0; < inbox.length(); i++) {                     jsonobject c = inbox.getjsonobject(i);                      ozonemessageinbox_beans ozoneinboxbean = new ozonemessageinbox_beans(c.getstring(tag_date),c.getstring(tag_message),c.getstring(tag_username),c.getstring(tag_userimage));                      feedlist.add(ozoneinboxbean);                     }             } catch (jsonexception e) {                 e.printstacktrace();             }             return null;         }         /**          * after completing background task dismiss progress dialog          * **/         @suppresswarnings("unchecked")         protected void onpostexecute(string file_url) {             // dismiss dialog after getting products             pdialog.dismiss();             adapter = new ozonemessageinboxadapter(feedlist,context);             ozone_msginbox_listview.setadapter(adapter);         }     }     private void initialisenoramlvariable() {         context  = getactivity();         mapppreference = apppreference.getinstance(context);     }  } 

and bean class is::

public class ozonemessageinbox_beans implements serializable{      string userid;     string username;     string user_image;     string gender;     string is_read;     string sender_id;     string receiver_id;     string message_id;     string message;     string created_date;     string r_id;     string status;     public ozonemessageinbox_beans(string username, string user_image, string message, string created_date) {          super();         this.username = username;         this.user_image = user_image;         this.message = message;         this.created_date = created_date;     }     public string getuserid() {         return userid;     }     public void setuserid(string userid) {         this.userid = userid;     }     public string getusername() {         return username;     }     public void setusername(string username) {         this.username = username;     }     public string getuser_image() {         return user_image;     }     public void setuser_image(string user_image) {         this.user_image = user_image;     }     public string getgender() {         return gender;     }     public void setgender(string gender) {         this.gender = gender;     }     public string getis_read() {         return is_read;     }     public void setis_read(string is_read) {         this.is_read = is_read;     }     public string getsender_id() {         return sender_id;     }     public void setsender_id(string sender_id) {         this.sender_id = sender_id;     }     public string getreceiver_id() {         return receiver_id;     }     public void setreceiver_id(string receiver_id) {         this.receiver_id = receiver_id;     }     public string getmessage_id() {         return message_id;     }     public void setmessage_id(string message_id) {         this.message_id = message_id;     }     public string getmessage() {         return message;     }     public void setmessage(string message) {         this.message = message;     }     public string getcreated_date() {         return created_date;     }     public void setcreated_date(string created_date) {         this.created_date = created_date;     }     public string getr_id() {         return r_id;     }     public void setr_id(string r_id) {         this.r_id = r_id;     }     public string getstatus() {         return status;     }     public void setstatus(string status) {         this.status = status;     }   } 

please point out issue , me solve this.

there mistake in constructor in loop.

you doing

ozonemessageinbox_beans ozoneinboxbean = new ozonemessageinbox_beans(c.getstring(tag_date),c.getstring(tag_message),c.getstring(tag_username),c.getstring(tag_userimage)); 

changed following one.

ozonemessageinbox_beans ozoneinboxbean = new ozonemessageinbox_beans(c.getstring(tag_username),c.getstring(tag_userimage),c.getstring(tag_message),c.getstring(tag_date)); 

Comments

Popular posts from this blog

How to provide Authorization & Authentication using Asp.net, C#? -

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

How to use Authorization & Authentication in Asp.net, C#? -