Android 实现不同通知栏

标签: Android通知栏
869人阅读 评论(0) 收藏 举报
分类:

第一步:(不管哪种方式都要先得到通知管理器的实例)

 NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

一,普通通知栏:

这里写图片描述

代码如下:

Notification.Builder builder=new Notification.Builder(this);
          Intent intent=new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.jianshu.com/p/82e249713f1b"));
          PendingIntent pendingIntent=PendingIntent.getActivity(this,0,intent,0);


          builder.setContentIntent(pendingIntent);
          builder.setSmallIcon(R.mipmap.ic_launcher);
          builder.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher));
          builder.setAutoCancel(true);
          builder.setContentTitle("普通通知栏");
          mNotificationManager.notify(1, builder.build());

二,自定义布局通知栏:

这里写图片描述

代码如下:(布局就是一个基本的布局)

notification.bigContentView=remoteViews;
notification.contentView=remoteViews;
Notification.Builder builder2=new Notification.Builder(this);
          Intent intent2=new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.jianshu.com/p/82e249713f1b"));
          PendingIntent pendingIntent2=PendingIntent.getActivity(this,0,intent2,0);
          builder2.setContentIntent(pendingIntent2);
          builder2.setSmallIcon(R.mipmap.ic_launcher);
          builder2.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher));
          builder2.setAutoCancel(true);
          builder2.setContentTitle("折叠通知");

          RemoteViews remoteViews=new RemoteViews(getPackageName(),R.layout.layout_view);
          Notification  notification=builder2.build();
          notification.bigContentView=remoteViews;
          mNotificationManager.notify(1,notification);

三,悬挂式的通知:

这里写图片描述
代码如下:(布局就是一个基本的布局)

Notification.Builder builder3=new Notification.Builder(this);
          Intent intent3=new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.jianshu.com/p/82e249713f1b"));
          PendingIntent pendingIntent3=PendingIntent.getActivity(this,0,intent3,0);
          builder3.setContentIntent(pendingIntent3);
          builder3.setSmallIcon(R.mipmap.ic_launcher);
          builder3.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher));
          builder3.setAutoCancel(true);
          builder3.setContentTitle("悬挂通知栏");

          Intent XuanIntent=new Intent();
          XuanIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
          XuanIntent.setClass(this,MainActivity.class);

          PendingIntent xuanpengdIntent=PendingIntent.getActivity(this,0,XuanIntent,PendingIntent.FLAG_CANCEL_CURRENT);
          builder3.setFullScreenIntent(xuanpengdIntent,true);
          mNotificationManager.notify(2,builder3.build());

另外:
VISIBILITY_PUBLIC: 任何情况的显示
VISIBILITY_PRIVATE: 只有在没有锁屏时显示
VISIBILITY_SECRET: 在安全锁下或者没锁屏下显示
Android5.0以后可以通过builder.setVisibility(Notification.VISIBILITY_PUBLIC);设置.

查看评论

Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)

目录(?)[+] 在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知...
  • tiankongcheng6
  • tiankongcheng6
  • 2017-10-09 15:50:14
  • 2318

Android:通知栏的使用

很久没有使用Android的通知功能了,今天把两年前的代码搬出来一看,发现很多方法都废弃了,代码中各种删除线看的十分不爽。于是乎,打开Google,查看官方文档,学习最新的发送通知栏消息的方法。  ...
  • cc20032706
  • cc20032706
  • 2016-07-08 11:47:42
  • 1407

Android 通知栏 Notification 基本使用

在Android操作系统中,状态栏通知Notification的运用是很常见的,比如我们收到短信,QQ消息等,在手机顶端通知栏就会显示一条图文消息来提示我们。Notification有很多的用法,比如...
  • plain_maple
  • plain_maple
  • 2016-09-13 16:22:37
  • 8785

androidN通知栏以及快捷通知栏通知栏

  • 2016年07月12日 14:09
  • 549KB
  • 下载

Android显示通知栏消息

一、说明 andorid应用经常会有一些推送消息,将数据从后台推向移动端。可能是一些更新,新闻,或者广告推送都会有,看你的APP是什么类型的~~  现在也有很多推送的SDK  友盟推送,腾讯信鸽推送。...
  • guoxiaolongonly
  • guoxiaolongonly
  • 2016-03-12 17:18:30
  • 5364

Android通知栏介绍与适配总结

由于历史原因,Android在发布之初对通知栏Notification的设计相当简单,而如今面对各式各样的通知栏玩法,谷歌也不得不对其进行更新迭代调整,增加新功能的同时,也在不断地改变样式,试图迎合更...
  • jiankeufo
  • jiankeufo
  • 2017-09-14 10:40:51
  • 2725

Android_Notification通知栏通知的实现

实现效果如图所示: MainActivity.java文件 package com.yongninggo.helloworld; import android.app...
  • Android_1996
  • Android_1996
  • 2017-06-05 18:09:12
  • 2066

Android Notification通知栏的必备姿势

android开发,可能经常使用到通知管理者,在手机顶部显示通知。封装一些常用的方法,可以减少代码冗余。通常情况下,显示下载进度,播放器通知栏操作,显示APP状态信息,发送友情提示等,都需要用到Not...
  • dzsw0117
  • dzsw0117
  • 2016-05-18 18:11:54
  • 3708

Android消息推送接收后,通知栏的显示

消息推送接收到后,显示通知栏 public static void showNotifictionIcon(Context context) { NotificationComp...
  • Love667767
  • Love667767
  • 2017-12-20 14:33:12
  • 1139

Android收起通知栏

点击notification时,如果它是发送广播的点击事件,通知栏就不会自动收起。我们需要通过代码手动的让通知栏收起。下面贴一下代码: 调用的是全局的上下文 否则不起作用 权限也是必须的  ...
  • mp624183768
  • mp624183768
  • 2017-05-10 11:34:59
  • 382
    个人资料
    等级:
    访问量: 1万+
    积分: 296
    排名: 26万+
    文章存档