自定义通知
//构建者
Notification.Builder builder = new Notification.Builder(this);
//设置属性
builder.setSmallIcon(R.drawable.ic_launcher_background);//小图标 必须要有
//加载布局
RemoteViews remoteViews = new RemoteViews(getPackageName(), R.layout.notif);
//设置布局
builder.setCustomBigContentView(remoteViews);
//发通知
NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
//相同id是更新 不同id是新通知!!!!
manager.notify(1,builder.build());
接下来就是布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/img"
android:src="@drawable/aaa"
android:layout_width="100dp"
android:layout_height="100dp">
</ImageView>
<TextView
android:id="@+id/title"
android:layout_marginLeft="20dp"
android:text="歌名"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</TextView>
<TextView
android:id="@+id/art"
android:layout_marginLeft="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="作者">
</TextView>
<Button
android:id="@+id/shang"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="上一首">
</Button>
<Button
android:id="@+id/xia"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="下一首">
</Button>
</LinearLayout>
图片自己设置
下面就是一个简单的效果
`
带交互通知
带交互通知也就是说:点击通知跳转到另一个页面
//构建者
Notification.Builder builder = new Notification.Builder(this);
//设置属性
builder.setSmallIcon(R.drawable.ic_launcher_background);
//加载布局
RemoteViews remoteViews = new RemoteViews(getPackageName(), R.layout.notif2);
builder.setCustomBigContentView(remoteViews);
//创建意图对象 (跳转)
Intent intent = new Intent(MainActivity.this,Main2Activity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 100, intent, 0);
//点击通知跳转
builder.setContentIntent(pendingIntent);
//设置震动,声音,呼吸灯闪烁
builder.setDefaults(Notification.DEFAULT_ALL);
//点击后关闭通知(跳转后关闭通知)
builder.setAutoCancel(true);
//发通知
NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
manager.notify(1,builder.build());
接下来就是布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:gravity="center"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:textSize="30dp"
android:gravity="center"
android:text="是她"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</TextView>
<ImageView
android:id="@+id/img"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@drawable/aaa"></ImageView>
</LinearLayout>
点击这个通知就跳转到了另一个页面