Android——状态栏通知栏Notification
1、AndroidManifest.xml注意要同时注册Notification02Activity
<!-- 状态通知栏 Notification -->
<activity
android:name="com.example.notification.Notification01Activity"
android:label="状态通知" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.example.notification.Notification02Activity"
android:label="Notification01Activity" >
</activity>
2、Notification01Activity.java
public class Notification01Activity extends Activity {
Button button01, button02, button03, button04;
// 声明通知(消息)管理器
NotificationManager mNotificationManager;
Intent mIntent;
PendingIntent mPendingIntent;
// 声明Notification对象
Notification mNotification;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_notification01);
// 获得四个按钮对象
button01 = (Button) findViewById(R.id.btn1_notifi);
button02 = (Button) findViewById(R.id.btn2_notifi);
button03 = (Button) findViewById(R.id.btn3_notifi);
button04 = (Button) findViewById(R.id.btn4_notifi);
// 初始化NotificationManager对象*************
mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
// 点击通知时转移内容*********查看通知的具体内容
mIntent = new Intent(Notification01Activity.this,
Notification02Activity.class);
// 主要是设置点击通知时显示内容的类***********
mPendingIntent = PendingIntent.getActivity(Notification01Activity.this,
0, mIntent, 0);
// 构造Notification对象
mNotification = new Notification();
button01.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
/* 状态栏上的通知图标及内容 */
// 设置通知在状态栏显示的图标
mNotification.icon = R.drawable.button1;
// 当我们点击通知时显示的内容
mNotification.tickerText = "Button01通知内容……";
// 通知时发出默认声音
mNotification.defaults = Notification.DEFAULT_SOUND;
/* ==============展开状态栏的快讯=========== */
// 设置通知显示的参数
mNotification.setLatestEventInfo(Notification01Activity.this,
"Button01", "Button01通知", mPendingIntent);
// 可理解为执行这个通知
mNotificationManager.notify(0, mNotification);
}
});
button02.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View arg0) {
mNotification.icon = R.drawable.button2;
mNotification.tickerText = "Button02通知内容……";
mNotification.defaults = Notification.DEFAULT_SOUND;
mNotification.setLatestEventInfo(Notification01Activity.this,
"Button02", "Button02通知", mPendingIntent);
mNotificationManager.notify(0, mNotification);
}
});
button03.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
mNotification.icon = R.drawable.button3;
mNotification.defaults = Notification.DEFAULT_SOUND;
mNotification.tickerText = "Button03通知内容……";
mNotification.setLatestEventInfo(Notification01Activity.this,
"Button03", "Button03通知", mPendingIntent);
mNotificationManager.notify(0, mNotification);
}
});
button04.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
mNotification.icon = R.drawable.button31;
mNotification.defaults = Notification.DEFAULT_SOUND;
mNotification.tickerText = "Button04通知内容……";
mNotification.setLatestEventInfo(Notification01Activity.this,
"Button04", "Button04通知", mPendingIntent);
mNotificationManager.notify(0, mNotification);
}
});
}
}
3、Notification02Activity.java
public class Notification02Activity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//这里直接限制一个TextView
setContentView(R.layout.activity_notification02);
}
}
4、activity_notification02.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="状态栏提示演示协助实现界面!" />
</LinearLayout>
5、activity_notification01.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/btn1_notifi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button01" />
<Button
android:id="@+id/btn2_notifi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button02" />
<Button
android:id="@+id/btn3_notifi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button03" />
<Button
android:id="@+id/btn4_notifi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button04" />
</LinearLayout>
Android——状态栏通知栏Notification的更多相关文章
- Android 状态栏通知Notification、NotificationManager简介
Notification(通知)一般用在电话,短信,邮件,闹钟铃声,在手机的状态栏上就会出现一个小图标,提示用户处理这个通知,这时手从上方滑动状态栏就可以展开并处理这个通知: 在Android系统中, ...
- Android 状态栏通知 Notification
private NotificationManager manager; private Notification.Builder builder; @Override protected void ...
- android显示通知栏Notification以及自定义Notification的View
遇到的最大的问题是监听不到用户清除通知栏的广播.所以是不能监听到的. 自定义通知栏的View,然后service运行时更改notification的信息. /** * Show a notificat ...
- android 创建通知栏Notification
///// 第一步:获取NotificationManager NotificationManager nm = (NotificationManager) getSystemService(Cont ...
- Android 状态栏通知Notification、NotificationManager详解
http://www.cnblogs.com/onlyinweb/archive/2012/09/03/2668381.html
- Android --通知栏Notification
参考博客:Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它) //创建一个通知栏的Builder构造类 (Create a Notification Bui ...
- Android种使用Notification实现通知管理以及自定义通知栏(Notification示例四)
示例一:实现通知栏管理 当针对相同类型的事件多次发出通知,作为开发者,应该避免使用全新的通知,这时就应该考虑更新之前通知栏的一些值来达到提醒用户的目的.例如我们手机的短信系统,当不断有新消息传来时,我 ...
- Android中使用Notification实现进度通知栏(Notification示例三)
我们在使用APP的过程中,软件会偶尔提示我们进行版本更新,我们点击确认更新后,会在通知栏显示下载更新进度(已知长度的进度条)以及安装情况(不确定进度条),这就是我们今天要实现的功能.实现效果如下: 在 ...
- Android中使用Notification实现宽视图通知栏(Notification示例二)
Notification是在你的应用常规界面之外展示的消息.当app让系统发送一个消息的时候,消息首先以图表的形式显示在通知栏.要查看消息的详情需要进入通知抽屉(notificationdrawer) ...
随机推荐
- Sass用法指南_20151109笔记
写在前面的话:随着CSS文件越来越大,内容越来越复杂,对其进行很好的维护将变的很困难.这时CSS预处理器就能够帮上大忙了,它们往往拥有变量.嵌套.继承等许多CSS不具备的特性.有很多CSS预处理器,这 ...
- NAT,网络地址转换详解
这个技术,是一个非常成熟的技术了,但是,为了将其弄得清楚点,体系点,也为了备忘,还是有必要在这里梳理一下! NAT:Network Address Translation. 这个主要是用在网络地址(I ...
- UI-导航控制器的使用
1.初始化导航栏控制器 2..设置导航栏的标题 3.跳到下一个页面 4.返回上一个页面 5.自定义返回页面 6.导航栏上的自定义返回按钮 7.两个导航栏显示隐藏的常用方法(当前页不显示)
- http://www.dayandeng.com/ 诈骗网站
http://www.dayandeng.com/ 诈骗网站 http://www.dayandeng.com/userfiles/media/2018/awzosv16.html 骗取你的京 ...
- 剑指offer系列23---字符串排列(不是很理解)
[题目]输入一个字符串,按字典序打印出该字符串中字符的所有排列. 例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 结果请按字母顺 ...
- 51nod 1297 管理二叉树
一个初始为空的二叉搜索树T,以及1到N的一个排列P: {a1, a2, ..., aN}.我们向这个二叉搜索树T添加这些数,从a1开始, 接下来是 a2, ..., 以aN结束.在每一个添加操作后,输 ...
- Python的更多内容
到目前为止,我们已经学习了绝大多数常用的Python知识.在这一章中,我们将要学习另外一些方面的Python知识,从而使我们对Python的了解更加 完整 . 1.特殊的方法 在类中有一些特殊的方法具 ...
- python学习-day11-内建函数
python-内建函数 -int:将字符串转换为数字 a = " print(type(a),a) b = int(a) print(type(b),b) num = " v = ...
- U-boot的环境变量: bootcmd 和bootargs
U-boot的环境变量: bootcmd 和bootargs u-bootcmdbootcmd是uboot自动启动时默认执行的一些命令,因此你可以在当前环境中定义各种不同配置,不同环境的参数设置, ...
- POJ题目分类
POJ上的一些水题(可用来练手和增加自信) (poj3299,poj2159,poj2739,poj1083,poj2262,poj1503,poj3006,poj2255,poj3094)初期: 一 ...