Android TV 智慧電視/盒子 APP 開發焦點控制 兩種方法例項
感謝分享 http://www.7po.com/thread-564068-1-1.html
第一種方法:
第二種方法:採用Android自帶的直接控制焦點上下左右的方法。這種方法的前提是必須知道每個view的id,因此在進行佈局時有必須要通過view.setId(…)指定view的特定ID,然後通過view.setNextLeftView(…)等四個方法控制該view的上下左右移動後所到達的view。
在一些比較複雜的Layout中,特別是涉及到在View的焦點變化的過程中還要控制view的背景以及字型顏色變化等。
比如:在有多個Layout(假設有Layout1, Layout2, Layout3,每個Layout中都有若干個ImageButton),
當你從Layout1中的某個ImageButton 1.1中移動Layout2中ImageButton 2.1,此時ImageButton 1.1要標識為被選中,但是失去焦點,此時ImageButton 2.1是選中並且獲取焦點,再從ImageButton 2.1移到ImageButton 3.1的過程中也是這種情況。
對於這樣一種情況,你必須對每個ImageButton 設定焦點捕獲實際(setOnFocusChangeListener),在該監聽事件中處理,
(注:下面程式碼即興寫的,大概就是這個意思 –^_^– )
還有就是當你當前焦點移動到ImageButton 3.1上時,你有時需要知道此時Layout1、Layout2上是哪個ImageButton 被選中,因此你還必須設定三個ImageButton 變數(標識選中哪個佈局中的那個ImageButton 物件),和三個int變數(標識選中哪個佈局中的第幾個)。
通過這些標識,你就可以很方便的瞭解到那個聚焦和哪個失去焦點了。
對於進行上下左右的控制,此時就要在OnKeyDown事件中進行捕獲處理了。由於事先已經知道是哪個Layout中的哪ImageButton被選中了,而此時你進行上下左右操作是在你被選中的View上進行操作的,因此在OnKeyDown中你只需先判斷是哪個View被選中,然後根據按鍵事件來移動View(通過之前設定的int標識進行移動)
(注:由於是即興寫的,可能部分程式碼有錯誤,這裡只是描述這個意思,–^_^–)
假設Layout1中被選中的ImageButton為mFirstImgBtn, 序號為mFirstIndx;
Layout3中被選中的ImageButton為mThirdImgBtn, 序號為mThirdIndx;
每個Layout裡面的ImageButton均在一個陣列中,
假設分別為:ImageButton mImgBtnArray1[], mImgBtnArray2[], mImgBtnArray3[]6 |9 `- i+ p+ D% w; i( C
而具體的獲焦事件處理則在每個View的 OnFocusChangeListener 事件中處理。
相關文章
- 魅族展示Flyme TV系統:將發電視盒子
- TV(智慧電視)app開發,adb區域網連線除錯APP除錯
- Android TV端RecyclerView焦點亂跑AndroidView
- Android TV版電視盒子亮相 小米和Google看著樂AndroidGo
- C# Winform 設定焦點控制元件的兩種方式和注意事項C#ORM控制元件
- 智慧電視和電視盒子的區別 電視盒子和智慧電視對比評測
- YouTube TV推出智慧電視App:可以看直播節目APP
- Android TV開發——RecyclerView For TVAndroidView
- 【開源專案】智慧電視及電視盒子的控制應用TVRemoteIME的介面說明VRREM
- 買了智慧電視需要買盒子嗎 智慧電視和電視盒子二者該選誰
- 拒絕期貨 愛奇藝TV+智慧電視優缺點點評
- 語音控制的電視盒子有哪些?四款精品智慧盒子推薦介紹
- 松下電視智慧投影Mirror for Panasonic TV
- Android TV版小米盒子專版亮相Android
- 2016年最好用電視盒子推薦 電視盒子和智慧電視哪個好
- 智慧電視盒子怎麼用 4個小技巧玩轉智慧盒子
- 智慧電視使用者體驗設計分享-焦點篇
- Yahoo Flurry:研究發現Apple TV上市 App衝擊傳統電視業APP
- android tv-TV Apps ChecklistAndroidAPP
- TCL釋出量子點電視QUHD TV:美的不止一點點
- 智慧電視和普通電視+電視盒子的區別 買哪個更划算
- Android TV-Building TV Apps,Get Started with TV AppsAndroidUIAPP
- 電視盒子是什麼 電視盒子特色功能解析
- 電視盒子不僅僅是點播,功能細分的電視盒子實用性更強
- 盤點你不知道的智慧電視/盒子的九大功效!
- 比起蘋果的Apple TV,小米盒子的最大優點就在於價格了吧蘋果APP
- Android TV開發總結【RecycleView】AndroidView
- android中部分Intent用法例項AndroidIntent
- 小視訊app開發過程中的兩種編碼標準APP
- android音視訊指南-管理音訊焦點Android音訊
- android TV-Making TV Apps Searchable,Searching within TV AppsAndroidAPP
- Android Jetpack - Android TV 應用開發教程AndroidJetpack
- 智慧電視和電視盒子哪個好?看業內人士怎麼說
- 智慧電視和電視盒子哪個好 京東618促銷活動地址
- 電視盒子在哪買更好 購物平臺四種途徑優缺點介紹
- 小米和Google合作:Android TV版小米盒子進軍美國GoAndroid
- js 設定焦點 判斷控制元件是否獲得焦點 判斷哪個控制元件獲得焦點JS控制元件
- [譯]SearchFragment --Android TV 開發手冊十二FragmentAndroid