Android 在通知中显示进度条
2016-07-27 13:31
573 查看
显示进度的核心方法 setProgress() , 正如一般使用中所见,有显示进度百分比的 和 显示正在进行的两种进度条:
一般把 max 设置为 100,以百分比的形式递增,完成操作后,可以将进度条栏删除(调用
这样从发布开始,动画会一直进行,直到你发出更新通知
显示 fixed-duration Progress indicater(持续时间固定的进度指示器)
使用setProgress(max, progress, false)将进度栏添加到通知,然后发出通知,随着操作的继续进行,递增process并更新通知
一般把 max 设置为 100,以百分比的形式递增,完成操作后,可以将进度条栏删除(调用
setProgress(0, 0, false)),或者保留显示。一定要更新通知文本显示操作已完成
mNotifyManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); mBuilder = new NotificationCompat.Builder(this); mBuilder.setContentTitle("Picture Download") .setContentText("Download in progress") .setSmallIcon(R.drawable.ic_notification); // 新建一个后台线程,来完成进度条的更新 new Thread( new Runnable() { @Override public void run() { int incr; // Do the "lengthy" operation 20 times for (incr = 0; incr <= 100; incr+=5) { // 设置新的百分比 mBuilder.setProgress(100, incr, false); // 发送通知 mNotifyManager.notify(0, mBuilder.build()); //暂停几秒 try { // Sleep for 5 seconds Thread.sleep(5*1000); } catch (InterruptedException e) { Log.d(TAG, "sleep failure"); } } // 完成后改变文本状态 mBuilder.setContentText("Download complete") // 删除进度条 .setProgress(0,0,false); mNotifyManager.notify(ID, mBuilder.build()); } } ).start();
显示持续Activity的指示器
使用的setProgress(0, 0, true)前两个参数可以忽略,最后一个参数表示这个指示器是不确定的
这样从发布开始,动画会一直进行,直到你发出更新通知
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories