How to fetch text in Textview field through JSON in android? -


i developing android application in have 12 dynamic frame layout in frame layout having text view,video,and play/pause button on .i want fetch text in text view field json. problem when fetch text in text view field using json text appear in 12th frame , rest of 11 frame empty.i don't know how resolve .kindly me .

public class mainactivity extends activity {  string moviename; private progressdialog pdialog; videoview vv; textview showingat, movie; framelayout frame; arraylist<string> abc;   @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.navigationbar);      abc = new arraylist<>();     new theaterflow().execute();     //main relative layout.     final relativelayout rl = (relativelayout)findviewbyid(r.id.mainrelativelayout);     //main scrollview.     final scrollview sv = (scrollview) findviewbyid(r.id.scrollview);     //main linearlayout.     final linearlayout ll = (linearlayout) findviewbyid(r.id.linearlayout1);      //dynamically creation of layouts.     framelayout.layoutparams playpausebtn = new framelayout.layoutparams(70, 70);     framelayout.layoutparams sound = new framelayout.layoutparams(55, 35);     framelayout.layoutparams nowshwingat = new framelayout.layoutparams(200, 60);     framelayout.layoutparams movie_name = new framelayout.layoutparams(viewgroup.layoutparams.match_parent, 60);      //defining array framelayout.      arraylist fholder = new arraylist();     int l = 12;     (int = 0; i<=l; i++) {         //dynamically frameslayout video         fholder.add(frame);         frame = new framelayout(this);         framelayout.layoutparams frameparams = new framelayout.layoutparams(viewgroup.layoutparams.match_parent, 350);         frameparams.setmargins(0, 2, 0, 0);         frame.setid(i + 1);         frame.setminimumheight(350);         ll.addview(frame);          // video on frames         vv = new videoview(this);         vv.setid(i + 1);         vv.setlayoutparams(frameparams);         vv.setminimumheight(350);         frame.addview(vv);          //pause btn on video         button pausebtn = new button(this);         pausebtn.setid(i + 1);         pausebtn.setbackgroundresource(r.drawable.pause);         pausebtn.setlayoutparams(playpausebtn);         playpausebtn.gravity = gravity.center;         frame.addview(pausebtn);          //play btn on video         button playbtn = new button(this);         playbtn.setlayoutparams(playpausebtn);         playbtn.setid(i + 1);         playbtn.setbackgroundresource(r.drawable.playy);         playpausebtn.gravity = gravity.center;         frame.addview(playbtn);           //sound btn on video         button soundbtn = new button(this);         soundbtn.setlayoutparams(sound);         soundbtn.setid(i + 1);         soundbtn.setbackgroundresource(r.drawable.sound);         sound.setmargins(0, 15, 5, 0);         sound.gravity = gravity.right;         frame.addview(soundbtn);          //now showing @ on video         showingat = new textview(this);         showingat.setlayoutparams(nowshwingat);         showingat.settext("now showing @ ");         showingat.settextsize(15);         showingat.settextcolor(getresources().getcolor(r.color.white));         nowshwingat.setmargins(10, 0, 0, 0);         nowshwingat.gravity = gravity.left | gravity.bottom;         frame.addview(showingat);          movie = new textview(mainactivity.this);         movie.setlayoutparams(movie_name);         movie.setid(i+1);         movie.settext(" ");         movie.settextsize(15);         movie.settextcolor(getresources().getcolor(r.color.white));         movie_name.setmargins(10, 10, 0, 0);         movie_name.gravity = gravity.top | gravity.left;         frame.addview(movie);       }   }  private class theaterflow extends asynctask<string, void, string> {       // url contents json     string url = "http://filfest.in/demo/theater/first-theater-data.php";     jsonarray contents = null;      protected void onpreexecute() {          super.onpreexecute();         pdialog = new progressdialog(mainactivity.this);         pdialog.setmessage("loading data ...");         pdialog.setindeterminate(false);         pdialog.setcancelable(false);         pdialog.show();     }      @override     protected string doinbackground(string...urls){          arraylist arraylist = new arraylist<hashmap<string, string>>();         servicehandler sh = new servicehandler();         // making request url , getting response         string jsonstr = sh.makeservicecall(url, null);          if (jsonstr != null) {             try {                  jsonobject jobject1 = new jsonobject(jsonstr);                 contents = jobject1.optjsonarray("contents");                 (int = 0; < contents.length(); i++) {                      jsonobject c1 = contents.getjsonobject(i);                     moviename = c1.getstring("movie_name");                     abc.add(moviename);                 }              } catch (jsonexception e) {                 e.printstacktrace();             }         }         return  null;     }     public void onpostexecute(string result) {         if (pdialog.isshowing())             pdialog.dismiss();         (int i=0;i<abc.size();i++)         {             movie.settext(moviename);         }      }   } 

}

add view programatically in linearlayout:

layout.xml:

 <?xml version="1.0" encoding="utf-8"?>  <linearlayout xmlns:android="http://schemas.android.com/apk/res/android"     android:id="@+id/llparent"     android:orientation="vertical"     android:layout_width="match_parent"      android:layout_height="match_parent">   </linearlayout> 

activity.java:

linearlayout llparent = (linearlayout)findviewbyid(r.id.llparent); 

onpostexecute() of asynctask:

 (int i=0;i<your_arraylist.size(); i++){     textview txtview = new textview(this);     txtview.settext(your_arraylist.get(i).getmoviename());     llparent.addview(txtview);  } 

edit:

 llparent.invalidate(); 

hope you.


Comments

Popular posts from this blog

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

linux - disk space limitation when creating war file -