我一直在開發一個Map項目。在所有Activity類中,我有一個名爲getDataFromServer()的方法,它從服務器爲特定活動解析某些JSON響應。並在地圖上顯示該數據。在接收和解析數據時,我想要顯示加載屏幕。如何在Doinbackground()中創建getDataFromServer()方法。Android:如何在訪問數據庫時創建加載屏幕
請提供給我的最好辦法........ 謝謝..
我一直在開發一個Map項目。在所有Activity類中,我有一個名爲getDataFromServer()的方法,它從服務器爲特定活動解析某些JSON響應。並在地圖上顯示該數據。在接收和解析數據時,我想要顯示加載屏幕。如何在Doinbackground()中創建getDataFromServer()方法。Android:如何在訪問數據庫時創建加載屏幕
請提供給我的最好辦法........ 謝謝..
使用AsyncTask:
public final class DownloadFile extends AsyncTask<Void, Long, Boolean> {
private Context context;
private ProgressDialog progressDialog;
public DownloadFile (Context context) {
this.context = context;
}
/*
* @see android.os.AsyncTask#onPreExecute()
*/
@Override
protected void onPreExecute() {
try {
progressDialog = ProgressDialog.show(context, "", "message", true);
} catch (final Throwable th) {
//TODO
}
}
/*
* @see android.os.AsyncTask#doInBackground(Params[])
*/
@Override
protected Boolean doInBackground(Void... arg0) {
//do something
}
@Override
protected void onProgressUpdate(String... progress) {
//do something
super.onProgressUpdate(progress);
}
/*
* @see android.os.AsyncTask#onPostExecute(java.lang.Object)
*/
@Override
protected void onPostExecute(Boolean result) {
progressDialog.dismiss();
} }
請參考以下鏈接
http://www.bango29.com/go/blog/2011/android-asynctask-is-a-beauty-part-2
在按鈕在clicklistener上,您可以創建對象。
new Classname()。execute();
謝謝Rajeshwaran。努努給了我更合適的例子 – Sridhar 2012-07-23 12:35:29
使用'AsyncTaks'看到這個答案http://stackoverflow.com/a/10570414/1289716 – MAC 2012-07-23 11:24:27