91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

AndroidTV 的焦點控制問題

發布時間:2020-06-18 08:44:59 來源:網絡 閱讀:4705 作者:DavidWillo 欄目:移動開發

   最近在做有關安卓TV的相關項目,與手機端的安卓開發不同的是,TV端需要我們對焦點進行一定的處理,才使得整個程序的邏輯符合我們的要求。在電視上進行操作,一般只能通過遙控的上下左右以及確認鍵來進行焦點的轉移。而原生的安卓系統已經為我們做了默認的焦點獲取處理,而這個默認的焦點則是自動選擇該方向上距離最近的一個目標獲得焦點,注意,這里的距離未必是直線距離,更多時候是該方向坐標的距離,比如:

AndroidTV 的焦點控制問題

   在這種情況下,在item1按下右鍵,item0將獲得焦點,而在item0按下下鍵,item1將獲得焦點,這往往會與我們的操作習慣不符。這時候就需要我們去控制焦點。當然了,最理想的情況是讓系統自動幫我們處理焦點的獲取,我們的布局可以做出適當的調整來使得焦點的變化符合邏輯,而在迫不得已的情況下,我們也可以通過以下的思路來改變。

   1.在XML屬性布局文件中,通過設置nextFocusDown , nextFocusLeft ,nextFocusRight ,和nextFocusUp,這些屬性的值來明確焦點從當前view轉移后的view的對應id。

   2.通過設置focusable屬性,來屏蔽部分控件的焦點獲取。

   3.通過代碼中的requestFocus來在某一時刻使某控件強制獲得焦點。

   4.通過ViewTreeObserver.OnGlobalFocusChangeListener來監聽全局的焦點變化,在焦點變化時進行代碼操作。

   5.對特定布局的按鍵事件進行攔截,然后手動設置焦點變化。

   6.利用listview、gridview等adapterview的特性,當整體獲得焦點時,再對item進行焦點分發,比如在需要保存選中狀態的應用場景。

   暫時我用到的主要是這些做法,日后可能會繼續進行補充。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宜春市| 平顺县| 金塔县| 海口市| 阜新| 扶绥县| 定西市| 曲水县| 温泉县| 荔波县| 万源市| 邻水| 东乡族自治县| 永宁县| 高邮市| 达孜县| 金平| 福州市| 榆中县| 元阳县| 青阳县| 云龙县| 延边| 新河县| 城市| 临沧市| 宾川县| 炉霍县| 澄迈县| 渝北区| 新民市| 焉耆| 常山县| 淳安县| 乌鲁木齐市| 上高县| 房山区| 武胜县| 乌兰察布市| 宁都县| 泾阳县|