運行效果:
前言:
Notification,是一種具有全局效果的通知,可以在系統的通知欄中顯示。當 APP 向系統發出通知時,它將先以圖標的形式顯示在通知欄中。用戶可以下拉通知欄查看通知的詳細信息。通知欄和抽屜式通知欄均是由系統控制,用戶可以隨時查看。
View層佈局:添加一個按鈕用於發送消息。
Control層代碼:
public class MainActivity extends AppCompatActivity {
public static final int NOTIFICCATION_ID=1200;
private int count=1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Notification.Builder builder=new Notification.Builder(MainActivity.this);// 使用建造者模式構建 Notification 對象
builder.setSmallIcon(R.mipmap.ic_launcher_round);//設置圖標
builder.setContentTitle("有個好消息!");//主標題設置
builder.setContentText("你第"+count+"對象找你了!");//內容文字
Notification notification=builder.build();//創建notification對象
NotificationManager manager= (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
//NotificationManager:是狀態欄通知的管理類,負責發通知、清除通知等。
//NotificationManager 是一個系統Service,必須通過 getSystemService()方法來獲取。
//使用NotificationManager獲取系統的Notification服務
manager.notify(NOTIFICCATION_ID,notification);
//喚醒正在此對象監視器上等待的單個線程。如果任何線程正在等待此對象,則選擇其中一個線程被喚醒。
//通過NotificationManager的notify(int, Notification) 方法來啓動Notification。
//第一個參數唯一的標識該Notification,第二個參數就是Notification對象。
count++;
}
});
}
}