Jollen 的 Android 教學,#19: 什麼是App Widget?

jollen 發表於 July 10, 2009 5:46 PM

App Widget是Cupcake(Android 1.5)所提供的一個功能,這是一個很實用而且能有很大創意想像空間的功能。什麼是App Widget呢?請看底下的操作示範。

在Android桌面長壓約3秒,出現一個選單,如圖1。

app-widget
圖1:新增項目至桌面

2. 選擇「Widget」,加入”HelloWidget”

app-widget
圖2:加入自行設計的Widget

桌面上出現了一個「Widget」

app-widget
圖3:在Android桌面上出現我們自已設計的App Widget

app-widget
圖4:加入了音樂撥放器App Widget至桌面

這就是App Widget的應用,可以將一個小塊程式(program piece)嵌入到桌面上。App Widget也是一種UI組件,先前所介紹的TextView、WebView等也泛稱為Widget,二者在應用上的差異該怎麼思考呢?以下是幾點看法:

1. App Widget是有生命的UI組件,他會自動更新本身的內容
2. Widget是沒有生命的UI組件,它不會自我更新,只能等待使用者的操作
3. 應用上,App Widget能提供不斷更新的內容,很適合用來設計天氣、時鐘、新聞等主動式應用程式
4. Widget應用上只用來製作UI,而UI因為只能等待使用者來操作,所以過去我們所撰寫的Android應用程式都是屬於被動式應用程式

讓App Widget能「主動」更新自身內容的方法是透過一個「時間觸發裝置」,Android框架會根據我們設定的時間間隔,不斷地callback我們的App Widget。後續將再說明App Widget的做法,並解釋這個部份。

Jollen's Blog 使用 Github issues 與讀者交流討論。請點擊上方的文章專屬 issue,或 open a new issue

您可透過電子郵件 jollen@jollen.org,或是 Linkedin 與我連絡。更歡迎使用微信,請搜尋 WeChat ID:jollentw