android - Fetch data from server and display listview in seprate thread -
i want access , populate listview seprate thread... object has not scope in new thread... solution it?
listview fileslistview; protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); fileslistview= (listview)findviewbyid(r.id.remotefileslistview); new thread ( new runnable() { @override public void run() { // fetch data server… string xmlformserver = worker.getxmlresponse(); log.d("response serever", xmlformserver; // fileslistview object of listview not accessable in thread populate data… } }).start(); }
you should implement adapter listview
try follow pattern below
protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); fileslistview = (listview) findviewbyid(r.id.remotefileslistview); adapter = new simpleadapter(/*...*/); // implement custom adapter or use native // 1. set adapter filelistview fileslistview.setadapter(adapter); new asynctask<void, void, list>() { @override protected list doinbackground(void... params) { string xmlformserver = worker.getxmlresponse(); log.d("response serever", xmlformserver; // 2. read data here list result = null; // // 3. send result ui thread return result; } @override protected void onpostexecute(list list) { // method executes on ui thread // 4. put data adapter // should implement method or create native adapter adapter.setdate(list); // 5. refresh list - ui thread can adapter.notifydatasetchanged(); super.onpostexecute(list); } }.execute(); }
Comments
Post a Comment