Notification-通知栏

通知

Notification表示一个通知对象,可以描述一个状态栏上的通知信息

NotificationManager表示一个通知服务,通知显示和隐藏的功能

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

显示通知

判断当前所在的平台版本,可以使用Build.VERSION.SDK_INT
if (Build.VERSION.SDK_INT >= 16) {
        Notification.Builder b = new Notification.Builder(
                    getApplicationContext());
            // 组装信息
            // 在状态栏上停留一段时间之后小时的提示文本
            b.setTicker("您有新短消息");
            b.setSmallIcon(R.drawable.ic_launcher);
            // 配置下拉的内容标题
            b.setContentTitle("短信");
            b.setContentText("今天天气晴朗,啦啦啦啦啦");
            // 配置通知时间
            b.setWhen(System.currentTimeMillis());
            // 点击通知,跳转到一个目标组件
            Intent it = new Intent(NotificationActivity.this,
                    MyListActivity.class);
            //延迟的意图(Context对象,意图的id,具体的意图,意图更新方式)
            PendingIntent pIntent = PendingIntent.getActivity(
                    NotificationActivity.this, 1, it,
                    PendingIntent.FLAG_UPDATE_CURRENT);
            b.setContentIntent(pIntent);
            // 显示通知
            n = b.build();
    }
    显示通知
    nManager.notify(123456, n);
    取消显示
    nManager.cancel(123456)

;
Notification的额外设置

//提醒的高级功能(闪灯、声音、震动)
    n.defaults = Notification.DEFAULT_LIGHTS;
    //通知的清除方式(FLAG_AUTO_CANCEL自动清除,FLAG_NO_CLEAR不自动清除)
    n.flags = Notification.FLAG_NO_CLEAR;
//自定义通知

    //创建RemoteViews(应用包名,布局id)
    RemoteViews remoteView = new RemoteViews(
                    "com.xykj.android_apidemo", R.layout.notify_layout);
    remoteView.setTextViewText(R.id.m_text, "这是一个自定义的通知内容");
    remoteView.setOnClickPendingIntent(R.id.m_btn, pIntent);
    //设置自定义的下拉内容
    b.setContent(remoteView);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值