现在的位置: 首页 > 综合 > 正文

执行异步任务执行时,公共提示框

2013年02月28日 ⁄ 综合 ⁄ 共 1090字 ⁄ 字号 评论关闭
下面是我项目中用的的一个执行异步任务时,用到的一个提示框,在做一些耗时的操作时用到:
import lbaca.sns.entity.PhoneInfo;
import android.app.ProgressDialog;
import android.os.AsyncTask;

public class MyCommonDialog extends AsyncTask<String, String, String> {

	ProgressDialog dialog;
	String msg;

	/**
	 * 此方法执行耗时操作
	 * 
	 * @return :返回
	 */
	protected String doNoUiOpt() {
		return "";
	}

	/**
	 * 根据返回的执行结果,做UI更新的处理
	 * 
	 * @param success
	 *            :操作是否执行成功
	 */
	protected void doBack(String success) {

	}

	public MyCommonDialog(String message) {
		// TODO Auto-generated constructor stub
		this.msg = message;
		execute(message);
	}

	@Override
	protected String doInBackground(String... params) {
		// TODO Auto-generated method stub
		return doNoUiOpt();
	}

	@Override
	protected void onPreExecute() {
		// TODO Auto-generated method stub
		super.onPreExecute();
		 //PhoneInfo.nowActivity为我当前显示的页面对象,如果不用这个方式,可以在构造函数里面传递对象过来
		dialog = new ProgressDialog(PhoneInfo.nowActivity);
		dialog.setMessage(msg);
		dialog.setTitle(R.string.system_dialog_title);
		dialog.setIcon(R.drawable.icon);
		dialog.setCancelable(false); // 禁用退回按键取消
		dialog.show();
	}

	@Override
	protected void onPostExecute(String result) {
		// TODO Auto-generated method stub
		super.onPostExecute(result);
		dialog.cancel();
		doBack(result);
	}

}

O了方便下次使用..

抱歉!评论已关闭.