我试图在我的Android应用程序上添加一个进度条,以显示应用程序加载数据,使用Ecplise,

时间:2014-11-27 14:27:03

标签: android eclipse progress-bar loading progressdialog

我理想情况下这个进度条可以作为弹出式对话框运行 - 就像加载栏...当用户点击图标运行应用程序时...然后一旦应用程序加载它就会消失。

我一直在研究如何做到这一点,但努力找到一个有效的解决方案......任何帮助都会很棒

2 个答案:

答案 0 :(得分:2)

您想要使用Android ProgressBar,您有两种选择:

<ProgressBar
    style="@android:attr/progressBarStyleLarge"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:indeterminate="true" />

这将为您提供一个永远循环的微调器。然后你只需要显示和隐藏它。

替代SO的范围很大。然而,原则是你得到以下内容:

  • 要下载的数据大小
  • 当前客户端数据传输速度

计算下载的剩余总时间。然后,您可以使用处理程序将定期更新发布到传统的线性progressBar,这将为您提供跟踪下载的进度条。 但是,正如您从MS所做的一切中看到的那样,这种计算很棘手,因为连接速度不断变化。

希望它有所帮助。

答案 1 :(得分:1)

声明新的ProgressBar:

private ProgressDialog mProgressDialog;

在你的onCreate()方法中:

mProgressDialog = new ProgressDialog(YOURACTIVITY);
mProgressDialog.setMessage("");
mProgressDialog.setIndeterminate(false);
mProgressDialog.setMax(100);
mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);

根据需要显示对话框:

mProgressDialog.show();
mProgressDialog.setCanceledOnTouchOutside(false);

添加进度:

mProgressDialog.setProgress(INT PROGRESS);

根据需要关闭对话框:

mProgressDialog.dismiss();