Java tutorial
//package com.java2s; /** * Copyright 2013 ? * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import android.app.Dialog; import android.app.ProgressDialog; import android.content.Context; public class Main { public static Dialog backgroundProcess(Context context, final Runnable run) { return backgroundProcess(context, run, null); } public static Dialog backgroundProcess(Context context, final Runnable run, String loadingComment) { return backgroundProcess(context, run, true, loadingComment); } public static Dialog backgroundProcess(Context context, final Runnable run, final boolean showDialog, String loadingComment) { final ProgressDialog progressdialog = creativeProgressBar(context, loadingComment); if (showDialog) progressdialog.show(); Runnable wrapper = new Runnable() { public void run() { run.run(); if (showDialog) progressdialog.dismiss(); } }; Thread thread = new Thread(wrapper); thread.setDaemon(true); thread.start(); return progressdialog; } public static ProgressDialog creativeProgressBar(Context context) { return creativeProgressBar(context, null); } public static ProgressDialog creativeProgressBar(Context context, String comment) { ProgressDialog dialog = new ProgressDialog(context); if (comment == null) dialog.setMessage("Please wait while loading..."); else dialog.setMessage(comment); dialog.setIndeterminate(true); dialog.setCancelable(true); return dialog; } }