2012-10-31 66 views
0

感謝您閱讀我的問題,請耐心閱讀。該場景與普通Android應用程序有點不同。Android小工具:關注焦點,點擊效果部件

我正在爲Android TV創建自己的啓動器。我有完整的權限來運行我的應用程序作爲系統程序。

我有我自己的發射器,我正在放置小部件。在Android中,通常我們通過在主屏幕上拖放來放置小部件,但在我的情況下,我必須在啓動器啓動後立即放置所有小部件。我能夠成功放置所有小部件。用戶不允許更改小部件位置或不允許刪除任何小部件。所有小部件都是固定的。

現在的要求是這樣的,

  1. 對於Android的電視,我有遙控器來訪問所有小工具和應用程序等,而不是觸摸屏的我有遠程訪問一切。

  2. 在主屏幕/啓動器上,我有所有的小部件,我需要實現空間導航。即我必須通過遠程左/右/上/下鍵導航所有小部件。

作爲一個解決方案,我已經做以下的事情:

  1. 我已經處理onFocusChangeListener聽焦點變化事件,我也處理onClickListener處理onclick事件。

  2. 焦點改變和點擊時,我發送廣播給每個控件,以及額外的數據,如got_focus,lost_focus或點擊。在每個小部件中,我有一個接收器接收廣播,並根據任何狀態,小部件更改其背景圖像。我已經把日誌記錄在我的每個接收器中。所有接收者都接收到它們各自的廣播,但問題是改變狀態的行爲並不一致。有時小部件會改變狀態,但有時它們不會,即使它們接收到廣播。

所以,我想知道是否有任何其他方式使這種行爲一致。任何曾經在發射器上工作過的人都遇到過相同的情況,請幫助我。過去3天我一直困在這一部分。有沒有其他方式來從啓動器更新小部件背景圖像。

感謝您耐心閱讀。任何形式的幫助將不勝感激。

再次感謝。

回答

1

現在小部件不適合電視。

你可以把LinearLayout包含widget。

設置可調焦的線性佈局。

禁止小部件內容焦點。

遠程鍵使LinearLayout狀態更改。

如果您按下確定。只需啓動小部件的活動。

但它無法控制小部件的內容(禁止焦點)。

0

轉到developer.android.com並搜索並將「狀態列表資源」應用於相關的Android TV GUI元素。