я думаю, вам нужен пример AsyncTask, может быть, он вам поможет
private class xyz extends AsyncTask<Void, Void, Void> {
private final ProgressDialog dialog = new ProgressDialog(tranning.this);
@Override
protected void onPreExecute() {
this.dialog.setMessage("Please Wait...");
this.dialog.show();
// put your code which preload with processDialog
}
@Override
protected Void doInBackground(Void... arg0) {
// put you code here
return null;
}
@Override
protected void onPostExecute(final Void unused) {
//if (this.dialog.isShowing()) {
// this.dialog.dismiss();
//}
}
}
и используйте его в своем основном классе ::
new xyz().execute();