效果如图:
其实这很简单 ,这只要我们在Fragment.java里写上一段代码就可以了
1:我们在你的页面列表监听方法里
创建下面代码:
Notification.Builder builder=new Notification.Builder(getActivity()); //创建"通知"构造器
builder.setSmallIcon(R.drawable.ic_launcher_background);
//给通知一个图标
builder.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher_background));
//给通知的软件相应的图标
builder.setContentTitle("你收到了一个通知");
//标题
builder.setContentText("你刚刚播放了一首歌:");
//文本
builder.setAutoCancel(true);
//对于一个通知,当展示在状态栏之后,但是使用过后,如何取消呢?Android/为我们提供两种方式移除通知,使用setAutoCancel()方法设置是否维护,传递一个boolean类型的数据。
NotificationManager nm=(NotificationManager) getActivity().getSystemService(Context.NOTIFICATION_SERVICE);
//点击通知信息后,进的是刚刚运行的页面,而不是新的页面;
nm.notify(1,builder.build());
```
2.给自定义“通知”一个传递 intent 效果 添加代码如下:
PendingIntent pendingIntent =PendingIntent.getActivity(getActivity(),0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
builder.setContentIntent(pendingIntent);
3.完整的代码如下:
PendingIntent pendingIntent =PendingIntent.getActivity(getActivity(),0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
Notification.Builder builder=new Notification.Builder(getActivity());
builder.setSmallIcon(R.drawable.ic_launcher_background);
builder.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher_background));
builder.setContentTitle("你收到了一个通知");
builder.setContentText("你刚刚播放了一首歌:");
builder.setContentIntent(pendingIntent);
builder.setAutoCancel(true);
NotificationManager nm=(NotificationManager) getActivity().getSystemService(Context.NOTIFICATION_SERVICE);
nm.notify(1,builder.build());
注意
通知栏进入播放页面,用的是 PendingIntent