2019独角兽企业重金招聘Python工程师标准>>>

1、NotificationManager类对象

<1>getSystemService(Context.NOTIFICATION_SERVICE) 获取通知管理对象

<2>notify(int id, Notification notification)

//定义通知管理对象

 
  1. NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

//定义通知构造器对象


NotificationCompat.Builder builder = new NotificationCompat.Builder(this).setSmallIcon(R.drawable.ic_launcher).setContentTitle("标题").setContentText("文本").setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE); 

(1)普通的通知


Intent intent1 = new Intent(this,SecondActivity.class); //设置点击通知时打开的窗口//定义延迟执行Intent的对象PendingIntent pIntent = PendingIntent.getActivity(this, 1, intent1, PendingIntent.FLAG_ONE_SHOT);                      //FLAG_ONE_SHOT:通知仅执行一次builder.setContentIntent(pIntent);manager.notify(0,builder.build());

(2)取消所有通知

 
  1. manager.cancelAll();

(3) 带进度条的通知


final NotificationCompat.Builder progressBuilder = new NotificationCompat.Builder(this);
progressBuilder.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle("Title")
.setContentText("听说宋丹丹要上马年春晚");
new Thread(new Runnable() {
@Override
public void run() {
int i;
for(i = 0;i <= 100;i+= 5){
//第一个参数: 进度条的最大值,第二个参数:当前进度,第三个参数:是否为不确定性进度
progressBuilder.setProgress(100, i, false);
manager.notify(3, progressBuilder.build());
try {
Thread.sleep(500); //每隔0.5秒发送一次通知
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
progressBuilder.setContentText("下载完毕!");
manager.notify(3, progressBuilder.build());
}
}).start();

2、NotificationCompat.Builder 通知的构造类

<1>普通通知

(1)setSmallIcon(R.drawable.ic_launcher) 设置通知的小图标

(2)setContentTitle("标题")

(3)setContentText("文本内容")

(4)setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE) 设置通知提示

(5)setContentIntent(PendingIntent) 设置通知被点击后的意图

(6)Notification build() 生成通知对象

(7).setLargeIcon(BitmapFactory.decodeResource(getResources(),R.drawable.qq))

<2>大视图通知

(1)setStyle(NotificationCompat.Style) 设置大视图样式

setBigContentTitle("大视图标题")

setSummaryText("大视图的说明")

(2)NotificationCompat.InboxStyle 包含一个列表控件

addLine("message1")

(3)NotificationCompat.BigTextStyle 包含一个大的文本控件

bigText("big text")

(4)NotificationCompat.BigPictureStyle 包含一个在的图片控件

bigPicture(BitmapFactory.decodeResource(getResources(), R.drawable.qq))

<3>带进度的通知

(1)setProgress(int max, int progress, boolean indeterminate) 设置当前进度,第三个参数:是否为不确定进度条

<4>自定义通知

(1)setContent(RemoteViews) 设置自定义的通知内容

(2)RemoteViews(String packageName, int layoutId) 加载一个指定应用下的布局资源文件

(3)setTextViewText(int viewId, "内容")  设置指定TextView控件的内容

(4)setImageViewBitmap(int viewId,Bitmap) 设置ImageView控件显示的图片

(5)setImageViewResource(int viewId,int resid) 设置ImageView控件显示的图片资源

转载于:https://my.oschina.net/huangxiaolei/blog/717956

Android第四十一天(3)相关推荐

  1. Android UI开发第四十一篇——墨迹天气3.0引导界面及动画实现

    周末升级了墨迹天气,看着引导界面做的不错,模仿一下,可能与原作者的代码实现不一样,但是实现的效果还是差不多的.先分享一篇以前的文章,android动画的基础知识,<Android UI开发第十二 ...

  2. android studio wifi,Android Studio第四十一期 - WIFI开发

    最近做项目遇到的问题,ListView滚动会改变Position的数值,所以要加以修改,才能做到微信的滚动,语音列表不会乱串Animation,唉~为什么会有这么多的BUG呢?faint~继续努力了~ ...

  3. 《Android学习指南》目录

    转自:http://android.yaohuiji.com/about Android学习指南的内容分类: 分类 描述 0.学习Android必备的Java基础知识 没有Java基础的朋友,请不要先 ...

  4. android 中文 api (72) —— BluetoothSocket[蓝牙]

    前言 本章内容是 android.bluetooth.BluetoothSocket,为Android蓝牙部分的章节翻译.蓝牙通讯套接字,代表了与远端设备的连接点,使用socket本地程序可以通过in ...

  5. Android开发笔记(序)写在前面的目录

    知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面希望通过分享自己的经验教训,与网友互相切磋,从而去芜存菁进一步提升自己的水平.因此博主就想,入门的东西咱就不写了,人不能老停留在入 ...

  6. Android开发笔记(序)

    本开发笔记,借鉴与其他开发者整理的文章范例与心得体会.在这里作为开发过程中的一个总结与笔记式记录. 如有侵犯作者权益,请及时联系告知删除.俗话说:集百家成一言,去粕成金. ************** ...

  7. Android开发笔记(序)写在前面的目录大全

    转自  湖前琴亭 的博客https://blog.csdn.net/aqi00/article/details/50012511 知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面 ...

  8. 左耳听风 第四十一周

    左耳听风 第四十一周 每周完成一个ARTS: 每周至少做一个 leetcode 的算法题.阅读并点评至少一篇英文技术文章.学习至少一个技术技巧.分享一篇有观点和思考的技术文章.(也就是 Algorit ...

  9. Android面试-Android性能优化和内存优化、APP启动速度一线大厂的实战案例解析

    一.Android 内存管理机制 二.优化内存的意义 三.避免内存泄漏 四.优化内存空间 五.图片管理模块的设计与实现 六.总结 深入探索Android内存优化 第一章.重识内存优化 第二章.常见工具 ...

最新文章

  1. 网络推广外包专员浅析如何在网络推广外包中获得相关关键词?
  2. 纠缠于沉没成本—— 你为什么应该忽视过去
  3. 35.JVM 参数(JVM中的各种参数及含义、收集器相关、PrintGC等各种辅助参数)
  4. 第八节:常见安全隐患和传统的基于Session和Token的安全校验
  5. 《Linux命令行与shell脚本编程大全 第3版》高级Shell脚本编程---24
  6. Opencv3.0.0安装包
  7. 教程视图Android教程(十三)-- Activity间的切换
  8. XML Web services 发现
  9. 中文文本对齐_终于明白Word如何快速对齐姓名!为之前狂敲空格的我,留下一把泪...
  10. python如何创建工程预设_新手如何发布第一个 Python 项目开源包?
  11. matlab连接散射点,使用小波散射做信号分类
  12. 51单片机实现电子时钟代码
  13. linux alsa工具,浅析alsa-utils工具aplay, mplayer
  14. Feign报错java.lang.NoSuchFieldError: MULTIPART_RELATED
  15. 解决ubuntu 16.04 启动黑屏,出现dev/sda7: clean, xxx/xxx files, xxx/xxx blocks字样问题
  16. 科普贴:远程开户,有哪些离岸银行可以选?
  17. Threejs系列--9游戏开发--沙漠赛车游戏【基础场景渲染】
  18. 空腹时 再饿都不能吃的11种食物
  19. 国内主流foundry工艺
  20. 建筑行业变革,ALC板材从工业建筑“红海”向民用住宅“蓝海”过渡

热门文章

  1. C# try与finally(WinForm、Asp.Net)
  2. Linux的文件和目录命令 linux系列⑤
  3. asp.net C#压缩打包文件例子
  4. 《Spring 5 官方文档》18. Web MVC 框架(五)
  5. Compiling: main.cpp /bin/sh: g++: not found
  6. javascript基础语法——变量和标识符
  7. 概率图模型PGM——D map, I map, perfect map
  8. [转]JavaScript代码收集
  9. BC427的UNIT3:Enhancement points/options Enhancement sections
  10. 来一次有侧重点的区分Swift与Objective-C