android progressbar动态,如何在android中动态启动和完成progressBar
當(dāng)我從第一個(gè)活動(dòng)類跳過第二個(gè)活動(dòng)類時(shí),我將在第二個(gè)活動(dòng)中開始對某個(gè)圖像進(jìn)行圖像處理,然后直到新圖像進(jìn)入屏幕我才開始進(jìn)度條,然后在新圖像到達(dá)屏幕時(shí)結(jié)束.我怎樣才能做到這一點(diǎn) ?
解決方法:
使用ProgreaaDialog和AsyncTask.你會(huì)得到你的靈魂
在doBackInGroundProcess中使用AsyncTask進(jìn)行圖像處理.并在doPostExecute()中退出或取消進(jìn)度對話框
看看示例代碼.
要啟動(dòng)AsyncTsk,請使用新的ProgressTask().execute(null);從您想要進(jìn)行圖像處理的活動(dòng).
private class ProgressTask extends AsyncTask {
private ProgressDialog dialog;
List titles;
private ListActivity activity;
//private List messages;
public ProgressTask(ListActivity activity) {
this.activity = activity;
context = activity;
dialog = new ProgressDialog(context);
}
/** progress dialog to show user that the backup is processing. */
/** application context. */
private Context context;
protected void onPreExecute() {
this.dialog.setMessage("Progress start");
this.dialog.show();
}
@Override
protected void onPostExecute(final Boolean success) {
List titles = new ArrayList(messages.size());
for (Message msg : messages){
titles.add(msg);
}
MessageListAdapter adapter = new MessageListAdapter(activity, titles);
activity.setListAdapter(adapter);
adapter.notifyDataSetChanged();
if (dialog.isShowing()) {
dialog.dismiss();
}
if (success) {
Toast.makeText(context, "OK", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(context, "Error", Toast.LENGTH_LONG).show();
}
}
protected Boolean doInBackground(final String... args) {
try{
BaseFeedParser parser = new BaseFeedParser();
messages = parser.parse();
return true;
} catch (Exception e){
Log.e("tag", "error", e);
return false;
}
}
}
}
標(biāo)簽:android,android-layout,android-widget,progress-bar
來源: https://codeday.me/bug/20191007/1867473.html
總結(jié)
以上是生活随笔為你收集整理的android progressbar动态,如何在android中动态启动和完成progressBar的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 向左滑动动画,Andro
- 下一篇: android 百度定位开启后fragm