第13讲- Android之消息提示Notification
第13讲 Android之消息提示Notification
、Notification
Notification可以理解为通知的意思一般用来显示广播信息,通知可以显示到系统的上方的状态栏(status bar)中,通知内部的显示分为两个部分:
1.notification area(通知状态栏); 2. notification drawer
(通知列表页面)。
( 图一 )
( 图二 )
当应用程序向android系统发出一个notification时,通知首先以小图标的方式出现在notification area。用户可以在下拉栏,打开notification drawer,显示notification的详细情况。
提示:notification area和notification drawer都是由android系统来管理和维护的,因此用户可以随时进行查看。
优点:某些信息不需要用户马上处理,可以利用通知,即延迟消息,比如软件的更新,短信,新闻之类的。
1.内容标题
2.大图标 3.内容 4.内容附加信息
5.小图标 6.时间
Toast 与 Notification的区别:
A、Toast是一种及时的消息提醒,而Notification是一种延迟的消息提醒。
B、Toast其实相当于一个组件(Widget),有些类似于没有按钮的对话框。而Notification是显示在屏幕上方状态栏中的信息。
C、 Notification需要用NotificationManager来管理,而Toast只需要简单地创建Toast对象即可。
、如何创建notification
1>实例化一个NotificationManager对象;如:manager
调用Context.getSystemService(NOTIFICATION_SERVICE)方法即可返回NotificationManager实例。
2>实例化一个NotificationCompat.Builder对象;如builder
3>调用builder的相关方法对notification进行上面提到的各种设置
4>调用builder.build()方法此方法返回一个notification对象。
5>调用manager的notify方法发送通知
NotificationManager有两个方法:notify()发出通知 cancel( )取消通知
//1.实例化一个NotificationManager对象;如:manager。通过getSystemService方法获得
NotificationManager manager=(NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE);
//2.实例化一个NotificationCompat.Builder对象;如builder
NotificationCompat.Builder builder = newNotificationCompat.Builder(this)
//3.调用builder的相关方法对notification进行上面提到的各种设置;
.setSmallIcon(R.drawable.ic_launcher) //小图标
.setContentTitle("My notification") //内容标题
.setContentText("Hello world!") //内容
.setTicker("来信息啦。。。");
//4.调用builder.build()方法此方法返回一个notification对象;
Notification notification=builder.build();
//5.调用manager的notify方法发送通知。
manager.notify(1, notification);
// manager.notify(id, notification); 发送一个通知
// manager.cancel(id); 取消通知
// 1. 通过getSystemService()方法得到NotificationManager对象:
String ns = Context.NOTIFICATION_SERVICE;
NotificationManager mNotificationManager =(NotificationManager) getSystemService(ns);
// 2. 初始化Notification:
int icon =R.drawable.notification_icon; // 设置通知的图标
CharSequence tickerText ="Hello"; //通知提示,显示在状态栏中的文字
long when =System.currentTimeMillis(); // 设置来通知时的时间
Notification notification = newNotification(icon, tickerText, when);
// 3. 定义通知的信息和PendingIntent:
Context context = getApplicationContext();
CharSequence contentTitle = "Mynotification";
CharSequence contentText = "HelloWorld!";
Intent notificationIntent = newIntent(this, MyClass.class); // 单击通知后会跳转到NotificationResult类
// 获取PendingIntent,点击时发送该Intent
PendingIntent contentIntent =PendingIntent.getActivity(this, 0, notificationIntent, 0);
notification.setLatestEventInfo(context,contentTitle, contentText, contentIntent); //设置通知的标题和内容
//notification.setLatestEventInfo(NotificationActivity.this, "标题","内容", contentIntent);
// 4. 通过NotificationManager对象的notify()方法来执行一个notification的消息:
private static final int HELLO_ID = 1;
mNotificationManager.notify(HELLO_ID,notification);
第13讲- Android之消息提示Notification的更多相关文章
- 第12讲- Android之消息提示Toast
第12讲 Android之消息提示Toast .Toast Toast 是一个 View 视图,在应用程序上浮动显示少量的信息给用户,它永远不会获得焦点,不影响用户的输入等操作,主要用于向用户显示一些 ...
- Android实现系统下拉栏的消息提示——Notification
Android实现系统下拉栏的消息提示--Notification 系统默认样式 默认通知(通用) 效果图 按钮 <Button android:layout_width="match ...
- android的消息提示(震动与提示音)
protected AudioManager audioManager; protected Vibrator vibrator; audioManager = (AudioManager)getSy ...
- android笔记-----消息提示
在/res/values目录下的文件中定义要显示的字符串,主要是考虑到后期可能需要换成英文之类的 <string name="login_checkBlank">用户名 ...
- Android开发 ---构建对话框Builder对象,消息提示框、列表对话框、单选提示框、多选提示框、日期/时间对话框、进度条对话框、自定义对话框、投影
效果图: 1.activity_main.xml 描述: a.定义了一个消息提示框按钮 点击按钮弹出消息 b.定义了一个选择城市的输入框 点击按钮选择城市 c.定义了一个单选提示框按钮 点击按钮选择某 ...
- Android三种消息提示
Android消息提示有三种方式: 1 使用Toast显示消息提示框 Toast类用于在屏幕中显示一个提示信息框,该消息提示框没有任何控制按钮,并且不会获得焦点,经过一定时间后自动消失.通常用于显示 ...
- React Native之通知栏消息提示(android)
React Native之通知栏消息提示(android) 一,需求分析与概述 1.1,推送作为手机应用的基本功能,是手机应用的重要部分,如果自己实现一套推送系统费时费力,所以大部分的应用都会选择使用 ...
- 【Android代码片段之六】Toast工具类(实现带图片的Toast消息提示)
转载请注明出处,原文网址:http://blog.csdn.net/m_changgong/article/details/6841266 作者:张燕广 实现的Toast工具类ToastUtil封装 ...
- Android第三方开源对话消息提示框:SweetAlertDialog(sweet-alert-dialog)
Android第三方开源对话消息提示框:SweetAlertDialog(sweet-alert-dialog) Android第三方开源对话消息提示框:SweetAlertDialog(sweet- ...
随机推荐
- text-overflow简单使用
text-overflow属性配合overflow才有效果,还记得把文字强制一行显示,如下代码: <!DOCTYPE html> <html lang="zh-cn&quo ...
- Django之Cookie与Session
一.cookie 1.cookie使用 def cookie(request): print(request.COOKIES) # 获取所有的COOKIES obj = render(request, ...
- HTML浅识
HTML相关======= ## 认识网页 *web标准(w3c三种标准):结构标准 -->html 表现标准 -->css 行为标准 -->js **浏览器和服务器:浏览器发送报文 ...
- tomcat下配置https环境
在网上搜了一下,内容不是非常完好. 现进行整理,做个学习笔记,以备以后使用. (1)进入到jdk下的bin文件夹 (2)输入例如以下指令"keytool -v -genkey -alias ...
- Mysql存储引擎概念特点介绍及不同业务场景选用依据
目录 MySQL引擎概述 1 MySAM引擎介绍 2 什么是InnoDB引擎? 3 生产环境中如何批量更改MySQL引擎 4 有关MySQL引擎常见企业面试题 MySQL引擎概述 Mysql表存储结构 ...
- ListView小坑
ListView的addHeaderView()和addFooterView()方法需要“Call this before calling setAdapter”,否则崩溃. 但是在KITKAT(ap ...
- 《第一行代码》学习笔记16-碎片Fragment(1)
1.碎片( Fragment):一种可以嵌入在活动当中的UI片段,能让程序更加合理和充分地利用大屏幕的空间,在平板上的应用广泛. 2.碎片同样包括布局,有自己的生命周期,甚至可理解成一个迷你型的活动. ...
- 作为java应届生,面试求职那点事
找工作两星期多了.心情不爽,写点记录打发时间. 嘘~~自己的破事: 刚毕业,也过了实习,本理所应当的留在公司转正.可是为了谈了两年的女朋友回家见面.一切都顺利进行,妈妈也开心给了一万见面礼,一切都以 ...
- 一致性哈希与java实现
一致性哈希算法是分布式系统中常用的算法.比如,一个分布式的存储系统,要将数据存储到具体的节点上,如果采用普通的hash方法,将数据映射到具体的节点上,如key%N,key是数据的key,N是机器节点数 ...
- 数据库分库分表(sharding)系列(二) 全局主键生成策略
本文将主要介绍一些常见的全局主键生成策略,然后重点介绍flickr使用的一种非常优秀的全局主键生成方案.关于分库分表(sharding)的拆分策略和实施细则,请参考该系列的前一篇文章:数据库分库分表( ...