android - Updating ListView Adapter from AsyncTask -


what have asynctask, started listview reached bottom item on screen, , in asynctask adds new items listview. here code:

      @override     protected void onpostexecute(final list records) {         super.onpostexecute(records);         ((activityhome)context).runonuithread(new runnable() {             public void run() {                  (itemdailyrecord p : records) {                     adapter.add(p);                 }                  adapter.notifydatasetchanged();             }         });      }  
   @override     protected list doinbackground(void... voids) {          dbadapterdailyrecord db = new dbadapterdailyrecord(context);         list list = db.getrecordsfromto(offset, count);          return list;     }  

here method listview adapter:

@override     public view getview(int position, view convertview, viewgroup parent) {          if(position == getcount() - 1 && hasmoreitems){             historyloadertask t = new historyloadertask(position + 1, pagesize, getcontext(),this);             t.execute();             footer.settext("loading . . .");         } 

and error message is(if scroll listview fast :)

caused by: android.view.viewrootimpl$calledfromwrongthreadexception: original thread created view hierarchy can touch views.

any ideas how solve issue?

the onpostexecute() method executed on ui thread, should updating ui directly in method; no need spawn new runnable object.


Comments

Popular posts from this blog

Unable to remove the www from url on https using .htaccess -