文档章节

Android第四十一天(3)

黄晓磊
 黄晓磊
发布于 2016/07/25 21:39
字数 517
阅读 18
收藏 2

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控件显示的图片资源                

© 著作权归作者所有

共有 人打赏支持
黄晓磊
粉丝 20
博文 51
码字总数 45039
作品 0
成都
Android第四十一天

1.概念 <1>Android应用中的菜单默认是隐藏的,只有当用户点击手机上的MENU键,系统才会显示菜单。这种菜单叫做选项菜单(Option Menu)。 <2>从3.0开始,Android不要求手机设备上必须提供MEN...

黄晓磊
2016/07/25
4
0
Android第三十一天

1、什么是Android的四层体系架构? <1>系统核心层(Linux Kernel) Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙...

黄晓磊
2016/07/11
27
0
Android第四十一天(2)

1、对话框的分类 <1>AlertDialog 警告对话框(提示对话框) (1)父类:android.app.Dialog (2)创建AlertDialog对话框的步骤 a.创建AlertDialog.Builder对象,该对象能创建AlertDialog; ...

黄晓磊
2016/07/25
3
0
《老罗Android开发视频教程》老罗来交国庆的答卷了

  之前在博客园、开源中国、安卓巴士发表的《老罗将死,或者Android也将就换代,但是互联网的,共享,互助精神将永存》,计划出300集免费的、高质量的、全面的Android开发视频教程,得到了...

qixinghaitang
2012/10/09
0
2
Android第二十一天

一:TCP/IP协议 TCP/IP是一个协议族。 TCP:(Transmission Control Protocol)传输控制协议 IP:(Internet Protocol)互联网协议 四层网络体系结构:物理层(网络接口层)、互联网络层(包含I...

黄晓磊
2016/06/27
16
0

没有更多内容

加载失败,请刷新页面

加载更多

ajax 提交返回map集合 获取不到值

后台java代码 @RequestMapping("/cameraList") @ResponseBody public Map<String, Object> cameraListForPage(@RequestParam(defaultValue = "1", value = "page") Integer page......

S三少S
8分钟前
0
0
TypeScrip最污的技术课-技术胖TypeScript图文视频教程

近日Node.js之父瑞安达尔(Ryan Dahl)发布新的开源项目 deno,从官方介绍来看,可以认为它是下一代 Node,使用 rust 语言代替 C++ 重新编写跨平台底层内核驱动,上层仍然使用 V8 引擎,最终...

JamesView
10分钟前
5
0
Es学习笔记

1.过滤排重聚合查询 筛选出某一个聚合值的个数统计。相当于mysql的distinct. 关键字:cardinality "aggs": { "2":{ "cardinality": { "field": "field" } ...

Gmupload
12分钟前
0
0
h5语义化标签

语义化HTML:用最恰当的HTML元素标签做恰当的事情。 优点: 提升可访问性; SEO; 结构清晰,利于维护; 通用容器:div——块级通用容器;span——短语内容无语义容器。 <title></title>:简...

莫西摩西
18分钟前
0
0
修改11g rac中 asm diskstring的发现路径

问题 : 如果我 们asm_disking以前是/dev/oracleasm/disks/* ,并且现在已经有磁盘组再用这个磁盘串了,那么,我们无法直接修改这个发现串为 ORCL:*,修改会报错,提示存在的磁盘无法使用新的...

tututu_jiang
21分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部