如何在Android中显示进度条时从一个活动移动到另一个活动
问题描述:
我是新的android编程,我有要求获取用户的联系人,并显示所有他们在其他activity.I已完成所有主要功能,但有一个要求,我想显示取得进展时的进展。如何在Android中显示进度条时从一个活动移动到另一个活动
答
我在我的应用程序中使用下面的代码(取自this answer)来做你正在做的事情,它对我来说就像一个魅力。
mButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
new AsyncTask<Integer, Long, Boolean>()
{
ProgressDialog mProgressDialog;
@Override
protected Boolean doInBackground(Integer... params)
{
mProgressDialog = new ProgressDialog(MyActivity.this);
mProgressDialog.setMax(params[0]);
mProgressDialog.setIndeterminate(false);
mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
publishProgress(0L);
long startTime = System.currentTimeMillis();
long waitTime = params[0] * 1000;
try
{
while (System.currentTimeMillis() - startTime < waitTime)
{
Thread.sleep(500);
publishProgress(System.currentTimeMillis() - startTime);
}
}
catch (Exception e)
{
return false;
}
return true;
}
@Override
protected void onProgressUpdate(Long... values)
{
if (values[0] == 0)
{
mProgressDialog.show();
}
else
{
mProgressDialog.setProgress((int) (values[0]/1000));
}
}
@Override
protected void onPostExecute(Boolean result)
{
mProgressDialog.dismiss();
Intent i = new Intent(context, NewActivity.class);
startActivityForResult(i, 0);
}
}.execute(5);
});
使用非同步任务来获取联系人或创建一个separete线程来获得联系人和任务完成后显示在UI线程的进度驳回进度条 – Pragnani 2013-03-07 17:49:51
这里我用的代码是没有任何问题此代码http://stackoverflow.com/questions/15271587/how-to-show-progress-in-android/15273301?noredirect=1#comment21547446_15273301 – Supreet 2013-03-07 17:51:31