Notification通知

普通通知

效果:

在这里插入图片描述

private void nornalNotification() {
NotificationManager Manager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);

    Notification.Builder builder = new Notification.Builder(this);
    builder.setSmallIcon(R.mipmap.one);
    builder.setTicker("收到一条消息");
    builder.setContentTitle("星期一");
    builder.setContentText("内容:有点凉");


    Bitmap bitmap=BitmapFactory.decodeResource(getResources(),R.mipmap.three);
    builder.setLargeIcon(bitmap);//大图片
    builder.setContentInfo("赠送");
    builder.setDefaults(Notification.DEFAULT_ALL);
    builder.setAutoCancel(true);//点一下关闭通知

    Manager.notify(1,builder.build());



}

进度通知

在这里插入图片描述

代码:
final NotificationManager manger=(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
    final Notification.Builder builder = new Notification.Builder(this);

    builder.setSmallIcon(R.mipmap.two);
    builder.setContentText("进度条");

    final Timer timer = new Timer();
    timer.schedule(new TimerTask() {
        int progress=0;
        @Override
        public void run() {
            builder.setProgress(100,progress,false);
            progress+=10;
            manger.notify(2,builder.build());
            if(progress==100) {
                manger.cancel(2);
                timer.cancel();
            }
        }
    },0,1000);

自定义通知:

xml布局文件

在这里插入图片描述

代码:

NotificationManager manager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
Notification.Builder builder = new Notification.Builder(this);

    builder.setSmallIcon(R.mipmap.one);
    builder.setContentTitle("custom");
    builder.setContentText("我是一个自定义内容");

    RemoteViews remoteViews=new RemoteViews(getPackageName(),R.layout.custom_notifi);

    remoteViews.setImageViewResource(R.id.notifi_image,R.mipmap.one);
    remoteViews.setTextViewText(R.id.notifi_text,"你好111111111111111111");
    builder.setContent(remoteViews);

    manager.notify(2,builder.build());

效果:

在这里插入图片描述

在这里插入图片描述

由于模拟器原因,有的需要长按才能显示文字

列表通知

private void listNotification() {
NotificationManager manager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
Notification.Builder builder = new Notification.Builder(this);

    builder.setContentTitle("列表选项");
    builder.setSmallIcon(R.mipmap.one);
    builder.setContentText("内容");

    
    Notification.InboxStyle inboxStyle = new Notification.InboxStyle();
    inboxStyle.addLine("恭喜你,获得极品装备");
    inboxStyle.addLine("请前往领取");
    inboxStyle.addLine("三天不领,即可退回");
    builder.setStyle(inboxStyle);

    manager.notify(3,builder.build());
}

实现效果

在这里插入图片描述

大视图通知

NotificationManager manager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
Notification.Builder builder = new Notification.Builder(this);

    builder.setContentTitle("大视图");
    builder.setSmallIcon(R.mipmap.one);
    builder.setContentText("内容");

    Notification.BigPictureStyle bigPictureStyle = new Notification.BigPictureStyle();
    bigPictureStyle.bigPicture(BitmapFactory.decodeResource(getResources(),R.mipmap.one));
    builder.setStyle(bigPictureStyle);

    manager.notify(11,builder.build());

实现效果:

在这里插入图片描述

悬浮框通知

private void suspendNotification() {
NotificationManager manager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
Notification.Builder builder = new Notification.Builder(this);

    builder.setContentTitle("视图");
    builder.setSmallIcon(R.mipmap.one);
    builder.setContentText("内容");

    Intent intent = new Intent(MainActivity.this,supose.class);
    PendingIntent activity = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
    builder.setContentIntent(activity);
    builder.setFullScreenIntent(activity,true);
    manager.notify(2,builder.build());


}

效果: 就是在模拟器的上方会弹出一个框

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值