android - how to keep data added to a list on a method for all the class java? -


i need use data add arraylist fieldsimages outside method add data it, when request data of fieldsimages inside 'done' method, works correctly because data there, outside method, fieldsimages has no data, it's empty.

how can make data added fieldsimages inside method done stay in class ?

please note 'done' method nested inside 'done' method. methods parse.com (backend using project)

    public class choosefielddialogfragment extends dialogfragment {          list<string> fieldsnamesinfo = new arraylist<string>();         list<string> fieldstypeinfo = new arraylist<string>();         list<string> fieldssizeinfo = new arraylist<string>();          //this 1 list need keep data added on method done         list<integer> fieldsimages = new arraylist<integer>();           listview choosefieldlist;         string mtitle;         long mtime;         string mvenueid;           @override         public void oncreate(@nullable bundle savedinstancestate) {             super.oncreate(savedinstancestate);              bundle bundle = this.getarguments();             mtitle = bundle.getstring("venuename");             mtime = bundle.getlong("reservtime");             mvenueid = bundle.getstring("venueid");                setshowsdialog(false);         }          @nullable         @override         public view oncreateview(layoutinflater inflater, @nullable viewgroup container, @nullable bundle savedinstancestate) {              view dialogview = inflater.inflate(r.layout.choose_field_list, container, false);               choosefieldlist = (listview) dialogview.findviewbyid(r.id.choosefragmentlist);                    parsequery<parseobject> query = parsequery.getquery("field");                  parseobject fieldobj = parseobject.createwithoutdata("venue", mvenueid);                 query.whereequalto("venueid", fieldobj);                 query.setlimit(1000);                 query.findinbackground(new findcallback<parseobject>() {                     public void done(final list<parseobject> fieldlist, parseexception e) {                         if (e == null) {                                (int = 0; < fieldlist.size(); i++){                                 fieldsnamesinfo.add(fieldlist.get(i).getstring("name"));                                 fieldstypeinfo.add(fieldlist.get(i).getstring("type"));                                 fieldssizeinfo.add(fieldlist.get(i).getstring("size"));                                   parsequery<parseobject> query = parsequery.getquery("reservation");                                  final parseobject fieldobj = parseobject.createwithoutdata("field", fieldlist.get(i).getobjectid());                                 query.whereequalto("fieldid", fieldobj);                                 query.whereequalto("date", mtime);                                 query.findinbackground(new findcallback<parseobject>() {                                     public void done(final list<parseobject> reservforfieldlist, parseexception e) {                                         if (e == null) {                                              log.d("funciono", integer.tostring(reservforfieldlist.size()));                                              if (reservforfieldlist.isempty()){                                                 log.d("argegandoverde","aaaaa");     //here add data list                                            fieldsimages.add(r.drawable.onfield);                                             }                                             else{                                                 log.d("argegandogris","uuuuu");      //here add data list                                            fieldsimages.add(r.drawable.offfield);                                              }                                             } else {                                             log.d("venue", "error: " + e.getmessage());                                         }         //here array list fieldsimages correctly populated data                                      }                                 });  //here array list loses data , gets empty                                  log.d("qqqqqq", integer.tostring(fieldsimages.size()));                               }                               log.d("qqqqqq", integer.tostring(fieldsimages.size()));          //here need use data added array list fieldsimages @ point empty.                             choosefieldcustomadapter customadapter = new choosefieldcustomadapter(getcontext(), fieldsnamesinfo, fieldsimages, fieldstypeinfo);                             choosefieldlist.setadapter(customadapter);                           } else {                             log.d("venue", "error: " + e.getmessage());                         }                     }                 });                  final alertdialog alertdialog = new alertdialog.builder(getactivity()).create();                 alertdialog.settitle(mtitle);                 alertdialog.setview(dialogview);                 alertdialog.show();                   return dialogview;         }     } 

thanks reading.

i'm not sure make sense focus, want keep data of fieldsimages list? if so, declare fieldsimage list static , put data. after that, can use anywhere. luck!


Comments