2012-01-05 61 views
2

我想處理我的App Widget中的volume upvolume down keyEvents。 這真的應該發生在app widget或一個服務,而不是在一個活動(應顯示主屏幕)。有沒有辦法處理小部件/服務中的關鍵事件?

但據我所知,似乎沒有可能與應用程序小部件或服務的用戶反應,所以我無法獲得keyEvents。

所以我的問題是,如果我錯了,並有可能獲得keyEvents或可能是一個使活動不可見?

回答

0

我找到了一招。這不是最好的,但在我的情況下,我可以使用它。

隨着分配主題

android:theme="@android:style/Theme.Dialog" 
在Android清單

android:theme="@android:style/Theme.Translucent.NoTitleBar" 

,它可能有一個看起來像一個對話框或者是透明的活動。所以主屏幕是可見的,在活動中我可以獲得keyEvents。

儘管在活動運行期間用戶不可能與主屏幕進行交互,但在我的情況下,這不是必需的。

2

如果通過「小部件」來表示「應用小部件」,那麼,不,您無法響應應用小部件中的關鍵事件。

+0

哦,是的,當然,我的意思是「應用部件」,謝謝 – tschob 2012-01-06 00:17:22

+1

@tschob:是的,我真的希望谷歌會想出另一個名稱爲「應用部件」,並沒有讓我們一直在想「意味着像「TextView」或者「widget」的意思是「app widget」... – CommonsWare 2012-01-06 01:06:20

相關問題