其中第2個和第3個notification使用的是同一個id(r.drawabgle.why),是以,第3個notification會覆寫第2個notification。
在顯示notification時還可以設定顯示通 知時的預設發聲、震動和light效果。要實作這個功能需要設定notification類的defaults屬性,代碼如下:
java代碼:
複制到剪貼闆 java代碼
notification.defaults = notification.default_sound; // 使用預設的聲音
notification.defaults = notification.default_vibrate; // 使用預設的震動
notification.defaults = notification.default_lights; // 使用預設的light
notification.defaults = notification.default_all; // 所有的都使用預設值
注意:設定預設發聲、震動和light的方法是setdefaults。該 方法與shownotification方法的實作代碼基本相同,隻是在調用notify方法之前需要設定defaults屬性(defaults屬性必須在 調用notify方法之前調用,否則不起作用)。在設定預設震動效果時還需要在androidmanifest.xml檔案中通過<uses-permission>标簽設定android.permission.vibrate權限。
如果要清除某個消息,可以使用notificationmanager類 的cancel方 法,該方法隻有一個參數,表示要清除的notification的id。使用cancelall可以清除目前notificationmanager對象中的所有notification。
運作本節的例子,單擊螢幕上顯示notification的按鈕,會顯示如 圖1所示的消息。每一個消息會顯示一會,然後就隻顯示整個android系統(也包括其他應用程式) 的notification(隻顯示圖像部分)。如圖2所示。如果将狀态欄拖下來,可以看 到notification的詳細資訊和發出通知的時間(也就是notification類的構造方法的第3個參數值),如圖3所
示。當單擊【清除通知】按鈕,會清除本應用程式顯示的所有notification,清除後的效果如圖4所示。