最近项目要求下载进度提示对话框 要有单位 KB,通过查看源码 发现android框架是提供了 这样的方法的 setProgressNumberFormat()但是这个方法 貌似对版本无效比如2.3 具体代码如下
downloadDialog = new ProgressDialog(ctx);
// downloadDialog.setIcon(R.drawable.ic_launcher);
downloadDialog.setTitle("下载中请等待");
downloadDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
downloadDialog.setCanceledOnTouchOutside(false);
downloadDialog.setProgressNumberFormat("%1d kb/%2d kb");
/* downloadDialog.setButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
//这里添加点击后的逻辑
}
});*/
downloadDialog.setButton2("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
errorMsg = "下载已经取消...";
sendMessage(DOWNLOAD_ERROR);
}
});
其中 downloadDialog.setProgressNumberFormat("%1d kb/%2d kb"); 参数 %1d kb/%2d kb的意思就是 进度填入 %1d位置 总数填入%2d 这样可以传入任意形式的格式化字符串只要有%1d和%2d 就OK。
效果图