title: Refresh Activity contents on clicking refresh Button
body: <p>I am building one demo app having pins of all users on Google mapView. I get the data of these users from one php file on server. php file return me one JSONArray of JSONObjects &amp; each JSONObject have data of an individual user. i get it &amp; locate the location of users om map as map pins. 
  it look -></p>
  
  <p>GoogleMapView-> <a href="http://i.stack.imgur.com/0FPMS.png" rel="nofollow">This</a>!</p>
  
  <pre><code>public class GoogleMapActivity extends MapActivity implements ActionBar {
  
  Button btnOnMapList, btnProfileHome, btnRefresh;
  Intent intent;
  GoogleMapActivity gMapActi;
  
  private JSONArray jArray;
  private JSONObject jFan_Data;
  private ItemBean bean;
  private FansData fansdata;//reference of FansData class that return me JSONArray 
  
  HelloItemizedOverlay itemizedOverlay;//..........
  
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
  
      btnProfileHome = (Button) findViewById(R.id.btn_profile_home);
      btnOnMapList = (Button) findViewById(R.id.btn_list_home);
      btnRefresh = (Button) findViewById(R.id.btn_refresh_home);
  
      super.onCreate(savedInstanceState);
      setContentView(R.layout.googlemapactivity);
      MapView mapView = (MapView) findViewById(R.id.mapview);
      mapView.setBuiltInZoomControls(true);
      mapView.displayZoomControls(true);
      // mapView.setSatellite(true);
  
      /**TG_1 -&gt; Here i write code to get my current location(e.g., through LocationManager) 
       * after getting location, i write my location`s latitude &amp; longitude into 
       * shearedPreference */
  
      //geading preference to get my unique id
      SharedPreferences myUid=GoogleMapActivity.this.getSharedPreferences("uid", MODE_WORLD_READABLE);
      String myId=myUid.getString("myId", "");
      Log.i("MyUid", myId);
  
      /**Calling "jFansData" method of "FansData" class, that return me JSONArray that 
       * have JSONObjects as its elements &amp; each JSONObject is the complete data of one Unique 
       * Fan Near you. currently i use hard codded  lat &amp; lang are
       */
      fansdata=new FansData();
      jArray=fansdata.jFanDataArray(1000, 12.9716060, 77.5903760, "h9ow0");
      System.out.println(jArray.toString());  
  
      //to showing fans on map as pins
      Drawable drawable = this.getResources().getDrawable(
              R.drawable.small_football_icon);
      HelloItemizedOverlay itemizedOverlay = new HelloItemizedOverlay(
              drawable, getParent());
      for(int i=0;i&lt;jArray.length();i++){
          try {
              jFan_Data=jArray.getJSONObject(i);
  
              //.........Code Showing different ways of How we can convert one double type value into String type!    
              try {
                  System.out.println("Normal"+jFan_Data.getDouble("lat"));
                  Double lat=new Double(jFan_Data.getDouble("lat"));
                  System.out.println("fm_Dbl_Wpr"+lat);
                  System.out.println("wpr_toStr"+Double.toString(lat));
                  System.out.println("wpr_toStr_jFan"+Double.toString(jFan_Data.getDouble("lat")));
  
                  Log.i("GeoCd_double", Double.toString(lat));
              } catch (JSONException e1) {
                  // TODO Auto-generated catch block
                  e1.printStackTrace();
              }
              //.........
              GeoPoint geoPoint = new GeoPoint((int) (jFan_Data.getDouble("lat")* 1E6),
              (int) (jFan_Data.getDouble("lang")* 1E6));
          //  GeoPoint geoPoint = new GeoPoint(jFan_Data.getInt("lat"),jFan_Data.getInt("lang"));
              //GeoPoint geoPoint = new GeoPoint((int)(jFan_Data.getInt("lat")*1E6), (int)(jFan_Data.getInt("lang")*1E6));
  
              OverlayItem overlayitem = new OverlayItem(geoPoint, jFan_Data.getString("name"),
              jFan_Data.getString("uniqid"));
              itemizedOverlay.addOverlay(overlayitem);
  
          } catch (JSONException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
          }
  
      }
  
  
      List&lt;Overlay&gt; mapOverlays = mapView.getOverlays();
  
  
      // Second Overlay
      Drawable drawable2 = this.getResources().getDrawable(
              R.drawable.small_football_icon_yellow);
  
      HelloItemizedOverlay itemizedOverlay2 = new HelloItemizedOverlay(
              drawable2, getParent());
  
      GeoPoint geoPoint4 = new GeoPoint(35410000, 139460000);
      OverlayItem overlayItem4 = new OverlayItem(geoPoint4, "Nidhi", "");
      itemizedOverlay2.addOverlay(overlayItem4);
  
      GeoPoint geoPoint5 = new GeoPoint((int) (41.51738 * 1E6),
              (int) (-0.08186 * 1E6));
      OverlayItem overlayItem5 = new OverlayItem(geoPoint5, "Sapan", "");
      itemizedOverlay2.addOverlay(overlayItem5);
  
      mapOverlays.add(itemizedOverlay);
      mapOverlays.add(itemizedOverlay2);
  }
  
   //.........................
  
  @Override
  protected boolean isRouteDisplayed() {
      // TODO Auto-generated method stub
      return false;
  }
  
  @Override
  public void onHomeList(View view) {
      Intent in = new Intent(getParent(), MapPinsList.class);
      TabGroupActivity prnt = (TabGroupActivity) getParent();
      prnt.startChildActivity("MapPinsList", in);
  
  }
  
  @Override
  public void onHomeProfile(View view) {
      Intent in = new Intent(getParent(), ProfileActivity.class);
      TabGroupActivity prnt = (TabGroupActivity) getParent();
      prnt.startChildActivity("ProfileActivity", in);
  
  }
  
  @Override
  public void onHomeRefresh(View view) {
      // TODO Auto-generated method stub
  
     //???????????
  
      //super.onCreate(null);
  }
  
  @Override
  public void onListMap(View view) {
      // TODO Auto-generated method stub
  
  }
  
  @Override
  public void onListProfile(View view) {
      // TODO Auto-generated method stub
  
  }
  
  }
  </code></pre>
  
  <p>it have one actionBar on this view having three imageButtons(refresh, List &amp; Profile) over it.
  when i click over "List" it will showing me the mapPins in one "ListView". I have one Adapter(LazyAdapter extends BaseAdapter).</p>
  
  <p>listView-> <a href="http://i.stack.imgur.com/FCRvV.png" rel="nofollow">this</a>!</p>
  
  <pre><code>public class MapPinsList extends ListActivity implements OnItemClickListener,ActionBar {
  
  ListView mFansListView;
  JSONArray jArray;//jArray that contains jobjects of all fans. each jobj hv data of 1 unique fan!
  JSONObject jFan_Data;//contain data of an indivisual fan
  JSONObject jFansData;//contain data of an all fans
  //ListViewCustomAdapter adapter;//gc
  LazyAdapter adapter;
  private ArrayList&lt;Object&gt; fansList;
  private ArrayList&lt;String&gt; mStrings ;
  private ItemBean bean;
  private FansData fansData;
  String url="http://192.168.200.111/ManU/";
  
  @Override
  public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.on_pins_list_clicks);
  
      prepareArrayLits();
  
      // mFansListView = (ListView) findViewById(R.id.listView1);
      mFansListView = (ListView) findViewById(android.R.id.list);
      adapter = new LazyAdapter(this, mStrings, fansList);
      mFansListView.setAdapter(adapter);// come null pointer exception when no fan data is returned! hendle it...
  
      mFansListView.setOnItemClickListener(this);
  }
  
  @Override
  public void onItemClick(AdapterView&lt;?&gt; arg0, View arg1, int position, long id) {
      // TODO Auto-generated method stub
      ItemBean bean = (ItemBean) adapter.getItem(position);
  
      //retrieve MyUniqueId from sheared Preferences 
      SharedPreferences myUid=MapPinsList.this.getSharedPreferences("uid", MODE_WORLD_READABLE);
      String myId=myUid.getString("myId", "");
  
      Toast.makeText(this,"MyUId-&gt;"+ myId+"\nFanId =&gt; " + bean.getUid() +" \n UID =&gt; " + bean.getTitle(), Toast.LENGTH_SHORT).show(); 
  
      /**from here-&gt; I am going to start one activity that show the complete profile of a 
       * particular Fan... According to the unique id received from clicking on ListItem!    
       */
      for(int i=0;i&lt;jArray.length();i++){
          try {
              JSONObject jFan_Data=jArray.getJSONObject(i);
              String fanId=jFan_Data.getString("uniqid");
  
              if(fanId.equals(bean.getUid())){
                  //New Intent that start new Activity that show Profile of a Fan
  
  
                  Intent in= new Intent(getParent(), FanProfile.class);
                  TabGroupActivity prnt = (TabGroupActivity) getParent();
                  Bundle fBundle= new Bundle();
                  //fBundle.putStringArray("jFanData", jFanData);
                  fBundle.putString("fanId", fanId);
                  in.putExtras(fBundle);
                  prnt.startChildActivity("FanProfile", in);
  
                  //startActivity(in);
  
              }
          } catch (JSONException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
          }
      }
  
  }
  
  /** Method used to prepare the ArrayList, Same way, you can also do looping
   * and adding object into the ArrayList.
   */
  
  /** Method used to prepare the ArrayList */
  public void prepareArrayLits() {
  
      /** I read shearedPreference to get my location`s latitude, longitude &amp;
       * myUniqueId */
      //......
  
      fansData = new FansData();
  
      //return me array containing data of all fans  
      jArray = fansData.jFanDataArray(1000, 12.9716060, 77.5903760, "h9ow0");
  
      /**preserving this jArray into preference so that i can recieve it any where 
       * when i want the data of all fans like in GooglwMapActivity when i tap on pins...
       * I store it in the String formate...But when i get it from preference i can 
       * build one JSONArray by passing this String as parameter as 
       * SharedPreferences fansData=GoogleMapActivity.this.getShearedPrefrences("jArray",MODE_WORLD_READABLE);
       * String jArr=JArray.getString("allFansData","");
       * -&gt; new JSONArray(jArr); will return me complete jArray same as that of here in MapPinsList!!!  
       * */
  
      SharedPreferences fansData = getSharedPreferences("jArray", MODE_WORLD_READABLE);
      SharedPreferences.Editor edit = fansData.edit();
      edit.putString("allFansData", jArray.toString());
      edit.commit();
  
      // ++++++++
      try {
          //Initializing ArrayList
          fansList = new ArrayList&lt;Object&gt;();
          mStrings = new ArrayList&lt;String&gt;();
          for (int i = 0; i &lt; jArray.length(); i++) {
              // will return the data of each row fetched from JSONArray returned by location1.php
              String data_of_each_user = jArray.get(i).toString();
  
              Log.i("Data Of User at index " + i + " is", data_of_each_user);
  
              // I put the object at index "i" into JSONObject &amp; retrieve data from name-value pair
              jFan_Data = jArray.getJSONObject(i);// data of User at index i
                                                  // in array
  
              AddObjectToList(jFan_Data.getString("uniqid").toString(), jFan_Data.getString("name"),
                      jFan_Data.getString("distance"));
  
              Log.i("URL", url+"images/"+jFan_Data.get("uniqid").toString()+".png");
              mStrings.add(url+"images/"+jFan_Data.get("uniqid").toString()+".png");
              Log.i("URL....", url+"images/"+jFan_Data.get("uniqid").toString()+".png");
  
              String nm = jFan_Data.get("name").toString();
              String uid = jFan_Data.get("uniqid").toString();
              String dis = jFan_Data.get("distance").toString();
  
              System.out.println("Your Name:       " + nm);
              System.out.println("Your Unique Id:  " + uid);
              System.out.println("Your Distance:   " + dis);
          }
      } catch (Exception e) {
          // TODO: handle exception
          e.printStackTrace();
      }
      // ++++++++++
  }
  
  // Add one item into the Array List
   public void AddObjectToList(String uid, String title, String desc) {
      bean = new ItemBean();
      bean.setUid(uid);
      bean.setDescription(desc);
      bean.setTitle(title);
      fansList.add(bean);
  }
  
  @Override
  public void onHomeList(View view) {
      // TODO Auto-generated method stub
  }
  
  @Override
  public void onHomeProfile(View view) {
      // TODO Auto-generated method stub
  }
  
  @Override
  public void onHomeRefresh(View view) {
      // TODO Auto-generated method stub
  }
  
  @Override
  public void onListMap(View view) {
      Intent in = new Intent(getParent(), GoogleMapActivity.class);
      TabGroupActivity prnt = (TabGroupActivity) getParent();
      prnt.startChildActivity("GoogleMapActivity", in);
  }
  
  @Override
  public void onListProfile(View view) {
      // TODO Auto-generated method stub
      Intent in = new Intent(getParent(), ProfileActivity.class);
      TabGroupActivity prnt = (TabGroupActivity) getParent();
      prnt.startChildActivity("ProfileActivity", in);
  }
  
  }
  </code></pre>
  
  <p><strong>What i need is when i click on Refresh Button on these Views my Activities contents get refreshed! ...?</strong></p>
  
  <p>the contents of JSONArray varies according to my current location &amp; when i click on refresh button it again look my data(e.g., my current LATITUDE &amp; LONGITUDE, distance upto which i want to see the users from my current location) i write these in onCreate of my class. 
  Now How do i refresh my contents when i click on "Refresh" button on these views???</p>
  
  <h2>Any suggestions please, would appreciated any pointer, sample code to do this</h2>