java - ArrayList is emptied (Android Studio (Google Maps API)) -


package com.example.sander.app;  import android.app.fragment;  /**  * created sander on 4-4-2017.  */  import android.app.fragment; import android.content.pm.packagemanager; import android.location.address; import android.location.geocoder; import android.os.bundle; import android.support.annotation.nullable; import android.support.v4.app.activitycompat; import android.support.v4.content.contextcompat; import android.view.layoutinflater; import android.view.view; import android.view.viewgroup; import android.manifest;  import com.android.volley.request; import com.android.volley.requestqueue; import com.android.volley.response; import com.android.volley.volleyerror; import com.android.volley.toolbox.stringrequest; import com.android.volley.toolbox.volley; import com.google.android.gms.maps.cameraupdatefactory; import com.google.android.gms.maps.googlemap; import com.google.android.gms.maps.mapfragment; import com.google.android.gms.maps.mapview; import com.google.android.gms.maps.mapsinitializer; import com.google.android.gms.maps.onmapreadycallback; import com.google.android.gms.maps.model.bitmapdescriptorfactory; import com.google.android.gms.maps.model.latlng; import com.google.android.gms.maps.model.markeroptions;  import org.json.jsonarray; import org.json.jsonexception; import org.json.jsonobject;  import java.util.arraylist; import java.util.list; import java.util.locale;   public class googlemaps extends fragment implements onmapreadycallback {     list<string> list = new arraylist<>();     list<double> latitude = new arraylist<>();     list<double> longitude = new arraylist<>();     @nullable     @override     public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) {         return inflater.inflate(r.layout.fragment_gmaps, container, false);     }      @override     public void onviewcreated(view view, bundle savedinstancestate) {         requestqueue rq = volley.newrequestqueue(getactivity().getapplicationcontext());          string url= "http://test.dontstealmywag.ga/api/parkgarage.php";          stringrequest stringrequest = new stringrequest(request.method.get, url,                 new response.listener<string>() {                     @override                     public void onresponse(string response) {                         // response                          try{                              jsonobject o = new jsonobject(response);                             jsonarray values=o.getjsonarray("parkgarage");                              ( int i=0; i< values.length(); i++) {                                  jsonobject sonuc = values.getjsonobject(i);                                 list.add(sonuc.getstring("parkgarage_name"));                                 longitude.add(sonuc.getdouble("langitude"));                                 latitude.add(sonuc.getdouble("longitude"));                              }                          }  catch (jsonexception ex){}                      }                 },                 new response.errorlistener() {                     @override                     public void onerrorresponse(volleyerror error) {                         // handle error                     }                 });         rq.add(stringrequest );         super.onviewcreated(view, savedinstancestate);          mapview mapview = (mapview) view.findviewbyid(r.id.map);         mapview.oncreate(savedinstancestate);          mapview.onresume(); // needed map display          try {             mapsinitializer.initialize(getactivity().getapplicationcontext());         } catch (exception e) {             e.printstacktrace();         }         mapview.getmapasync(this);      }      @override     public void onmapready(googlemap googlemap) {          latlng marker = new latlng(51.9244201, 4.4777325);         for(integer = 0; < list.size(); i++){             googlemap.addmarker(new markeroptions().title(list.get(i)).position(new latlng(longitude.get(i), latitude.get(i))));         }         googlemap.addmarker(new markeroptions().title("testing").position(marker));         googlemap.movecamera(cameraupdatefactory.newlatlngzoom(marker, 12));         //googlemap.addmarker(new markeroptions().title(list.get(1)).position(marker));          if (activitycompat.checkselfpermission(getactivity(), manifest.permission.access_fine_location) != packagemanager.permission_granted && activitycompat.checkselfpermission(getactivity(), manifest.permission.access_coarse_location) != packagemanager.permission_granted) {             return;         }         googlemap.setmylocationenabled(true);         googlemap.getuisettings().setcompassenabled(true);         googlemap.getuisettings().setmylocationbuttonenabled(true);      } } 

i'm building app adds parking garages google maps app. i'm using navigation activity multiple fragments, above code contains googlemaps fragment.

after first time launch "maps" navigation activity. of markers putted on screen, when launch second time gone. point array not filled or emptied after first time. know how fix this?


Comments

Popular posts from this blog

inversion of control - Autofac named registration constructor injection -

verilog - Systemverilog dynamic casting issues -

ios - Change Storyboard View using Seague -