`
44289533
  • 浏览: 65100 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

子线程查询数据库 父线程更新UI,dialog在主线程内

 
阅读更多
使用progressdialog 交互
查询数据库,在子线程内
主线程更新UI界面

		
final Runnable mUpdateUI = new Runnable() {
	public void run() {
	//update UI
}
};
//check wifi
		Boolean isNetwork = Utility
				.isNetworkAvailable(InventoryCountConfirm_ListActivity.this);
		showWaitDialogNoTitle(getString(R.string.MSG_I_0004));
		if (isNetwork) {
				new Thread(new Runnable() {
					public void run() {
						//acess sql get data						
uiHandler.post(mUpdateUI); // call updateUI thread
						closeCurrentDialog();
					}
				}).start();
		} else {
//do sth.		}


//show dialog
public AlertDialog showWaitDialogNoTitle(String msg) {
		if (currentDialog != null && currentDialog.isShowing()) {
			currentDialog.cancel();
		}
		currentDialog = new ProgressDialog(this);
		currentDialog.setMessage(msg);
		((ProgressDialog) currentDialog)
				.setProgressStyle(ProgressDialog.STYLE_SPINNER);
		currentDialog.setCancelable(false);
		currentDialog.show();
		return currentDialog;
	}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics