android - Loading an activity before launch -


i have activity contains button, when press button loads second activity. second activity has listview , bunch of other stuff , on devices takes few seconds load want display progressdialog let user know activity in fact loading. have following:

edit:

public void rewardfirstnext(view view){      asynctask<void, void, void> progress = new asynctask<void, void, void>() {         private progressdialog progressdialog;          protected void onpreexecute(){             progressdialog = new progressdialog(getapplicationcontext());             progressdialog.settitle("loading installed applications");             progressdialog.setmessage("please wait.");             progressdialog.setcancelable(false);             progressdialog.setindeterminate(true);             progressdialog.show();         }          protected void doinbackground(void... voids) {             packagemanager mpackagemanager = getpackagemanager();             list<applications> packageinfolistapps = new arraylist<applications>();             list<packageinfo> packageinfolist = mpackagemanager.getinstalledpackages(packagemanager.get_permissions);             list<packageinfo> installedapps = new arraylist<packageinfo>();              (packageinfo apps : packageinfolist) {                 if (!issystempackage(apps)) {                     installedapps.add(apps);                 }              }             collections.sort(installedapps, new comparator<packageinfo>() {                 public int compare(packageinfo o1, packageinfo o2) {                     return o1.applicationinfo.loadlabel(getpackagemanager()).tostring().comparetoignorecase(o2.applicationinfo.loadlabel(getpackagemanager()).tostring());                 }             });             (packageinfo apps : installedapps) {                 packageinfolistapps.add(new applications(apps, false, false));             }              //what else happens here?             return null;         }          protected void onpostexecute(void result){             progressdialog.dismiss();         }     };      progress.execute((void[]) null); } 

what should doing putting of this

mpackagemanager = getpackagemanager(); list<applications> packageinfolistapps = new arraylist<applications>(); list<packageinfo> packageinfolist = mpackagemanager.getinstalledpackages(packagemanager.get_permissions); list<packageinfo> installedapps = new arraylist<packageinfo>();  (packageinfo apps : packageinfolist) {     if (!issystempackage(apps)) {         installedapps.add(apps);     }  } collections.sort(installedapps, new comparator<packageinfo>() {     public int compare(packageinfo o1, packageinfo o2) {         return o1.applicationinfo.loadlabel(getpackagemanager()).tostring().comparetoignorecase(o2.applicationinfo.loadlabel(getpackagemanager()).tostring());     } }); (packageinfo apps : installedapps) {     packageinfolistapps.add(new applications(apps, false, false)); } 

inside of asynctask.

take new applicationadapter(this, packageinfolistapps, mpackagemanager) , keep reference of in

applicationadapter adater = new applicationadapter(this, packageinfolistapps, mpackagemanager) 

then start progress dialog did , in onpostcreate call

adapter.notifydatasetchanged(); 

which populate listview , should stop dialog too


Comments

Popular posts from this blog

php - Calling a template part from a post -

Firefox SVG shape not printing when it has stroke -

How to mention the localhost in android -