您的位置:首页 > 移动开发 > Android开发

android 进度条设置显示格式

2015-11-09 19:52 253 查看
自定义显示格式:

progressDialog.setProgressNumberFormat("%1d kb/%2d kb");

当前进度填入%1d位置,总数填入%2d。

这个方法是自动填充的,只要在初始化时,加上这一句,

调用progressDialog.setMax(int )后会自动将总数填入%2d.

同理,调用progressDialog.setProgress(int )后会自动将当前进度填入%1d.

但是,从setMax,setProgress的输入参数可知这2个方法只接收整数。

如果进度显示的样式只要求为整数形式,那么在初始化时,定义一次

progressDialog.setProgressNumberFormat("%1d kb/%2d kb"); 就可以了。

那要如何显示小数呢? 很简单,既然setProgressNumberFormat()能显示自定义的"/","kb",

这些字符,那么就能显示我们需要的自定义字符串。所以,干脆就让这个方法不接收前面

说的当前进度%1d,和总数%2d,而是直接显示我们需要的处理好的字符串即可:

(文件大小fileLength,已下载大小downLength)

初始化时: progressDialog.setMax(fileLength);

每一次刷新下载进度时:

progressDialog.setProgress(downLength);

float all = fileLength/1024/1024;

float percent = downLength/1024/1024;

progressDialog.setProgressNumberFormat(String.format("%.2fM/%.2fM", percent, all));

注意:setProgressNumberFormat这个方法要求版本最小为 android:minSdkVersion="11"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: