編輯:Android開發實例
Notification與Toast都可以起到通知、提醒的作用。但它們的實現原理和表現形式卻完全不一樣。Toast其實相當於一個組件(Widget)。有些類似於沒有按鈕的對話 框。而Notification是顯示在屏幕上方狀態欄中的信息。還有就是Notification需要用NotificationManager來管理,而Toast只需要簡單地創建Toast對象即可。
下面來看一下創建並顯示一個Notification的步驟。創建和顯 示一個Notification需要如下5步:
1. 通過getSystemService方法獲得一個NotificationManager對象。
2. 創建一個Notification對象。每一個Notification對應一個Notification對象。在這一步需要設置顯示在屏幕上方狀態欄的通知消息、通知消息前方的圖像資源ID和發出通知的時間。一般為當前時間。
3. 由於Notification可以與應用程序脫離。也就是說,即使應用程序被關閉,Notification仍然會顯示在狀態欄 中。當應用程序再次啟動後,又可以重新控制這些Notification。如清除或替換它們。因此,需要創建一個PendingIntent對象。該對象由Android系統負責維護,因此,在應用程序關閉後,該對象仍然不會被釋放。
4. 使用Notification類的setLatestEventInfo方法設置Notification的詳細信息。
5. 使用NotificationManager類的notify方法顯示Notification消息。在這一步需要指定標識Notification的唯一ID。這個ID必須相對於同一個NotificationManager對象是唯一的,否則就會覆蓋相同ID的Notificaiton。
心動不如行動,下面我們來演練一下如何在狀 態欄顯示一個Notification,代碼如下:
<!--[endif]-->下面的代碼使用showNotification方法顯示了3個Notification消息。
其中第2個和第3個Notification使用的是同一個ID(R.drawabgle.why),因此,第3個Notification會覆蓋第2個Notification。
在顯示Notification時還可以設置顯示通 知時的默認發聲、震動和Light效果。要實現這個功能需要設置Notification類的defaults屬性,代碼如下:
注意:設置默認發聲、震動和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所示。
圖1
圖2
圖3
圖4
轉自:http://www.cnblogs.com/nokiaguy/archive/2010/07/13/1776190.html
在Android開發中經常會需要用到帶文字和圖片的button,下面來給大家介紹使用radiobutton實現圖片和文字上下布局或左右布局。代碼很簡單就不給大家多
登錄應用程序的屏幕,詢問憑據登錄到一些特定的應用。可能需要登錄到Facebook,微博等本章介紹了,如何創建一個登錄界面,以及如何管理安全問題和錯誤嘗試。首先,必須定義兩
Android提供了許多方法來控制播放的音頻/視頻文件和流。其中該方法是通過一類稱為MediaPlayer。Android是提供MediaPlayer類訪問內置的媒體播放
Android應用程序可以在許多不同地區的許多設備上運行。為了使應用程序更具交互性,應用程序應該處理以適合應用程序將要使用的語言環境方面的文字,數字,文件等。在本章中,我