I have created a ListActivity in which I am showing some data ,but after pressing download button app downloads latest data , It will be shown in ListActivity so please help me that how can i refresh ListActivity.
public void fetch1(){
event=this;
// TODO Auto-generated method stub
try {
Runnable runnable = new Runnable() {
@Override
public void run() {
handler.post(new Runnable() {
@Override
public void run() {
try{
//dialog.show();
BufferedReader in = null;
String url=URLManager.orderUrl+DataFactory.userData.sid+"&dnumber="+DataFactory.userData.dnumber+"&from_date="+fromDateStr+"&to_date="+toDateStr; ;
// String login = "morris";
//String pass = "mor$ris";
DefaultHttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet();
client.getCredentialsProvider().setCredentials(new AuthScope("newdev.objectified.com", 80), new UsernamePasswordCredentials(URLManager.user, URLManager.pass));
request.setURI(new URI(url));
HttpResponse response = client.execute(request);
in = new BufferedReader
(new InputStreamReader(response.getEntity().getContent()));
StringBuffer sb = new StringBuffer("");
String line = "";
String NL = System.getProperty("line.separator");
while ((line = in.readLine()) != null) {
sb.append(line + NL);
}
in.close();
String page = sb.toString();
// Toast.makeText(event,url+"--::::--"+ page, Toast.LENGTH_LONG).show();
OrdersHandler handler=new OrdersHandler();
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
xr.setContentHandler(handler);
InputSource is = new InputSource();
is.setCharacterStream(new StringReader(page));
xr.parse(is);
Vector v=handler.getData();
DataFactory.ordersVector=v;
dataVector=DataFactory.ordersVector;
ordersId=new String[dataVector.size()];
for(int a=0;a<dataVector.size();a++){
OrdersData o=(OrdersData)dataVector.elementAt(a);
ordersId[a]=o.order_id;
}// end of the for
//event.setListAdapter(new IconicAdapter());
// adapter.clear();
// Create an ArrayAdapter, that will actually make the Strings above
// appear in the ListView
/*
for(int a=0;a<v.size();a++){
OrdersData o=(OrdersData)v.elementAt(a);
names=names+o.order_id+"\n";
}// end of the for loop
//String data=d.sid+"\n"+d.dtitle+"\n"+d.dcountry+"\n"+d.dcity;
Toast.makeText(event, names, Toast.LENGTH_LONG).show();
*/
}catch(Exception e){
}
}
});
}
};
new Thread(runnable).start();
//executeHttpGet();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
Toast.makeText(this, e+"", Toast.LENGTH_SHORT).show();
}
adapter.setNotifyOnChange(true);
//adapter.clear();
adapter=new IconicAdapter();
this.setListAdapter(adapter);
}// end of the fetch method
I am downloading data then want to refresh the ListActivity.But application is going to be crashed when I press the download button
you have to call this on the listView’s adapter to refresh the listView. you will also have to update the resources you pass to the adapter after you download data.