目前我正在开发Android TV应用.
我使用过Android Lean支持库.
我添加了一个ListView
,但我无法从listView中选择任何带有真实设备遥控器的项目.但是,我可以借助鼠标在我的Android虚拟设备上选择listView项.
这是我的listView示例代码:
customViewOrders = new CustomViewOrders(getActivity().getBaseContext(), arrayViewOrders); lstViewOrder.setAdapter(customViewOrders);
这arrayViewOrders
是我的ArrayList,它包含从JSON webservice收到的数据.
这是我的JSON响应:
{ "order":[ { "0":"13829CF", "gen_id":"13829CF", "1":"17534CF", "2":"Complete", "ord_status":"Complete", "3":"Online Preview", "sta_name":"Online Preview", "4":"2015-10-27 00:00:00", "image":"cinereel", "placed_from":"web" } ] }
我还在AndroidManifest.xml文件中添加了以下功能:
所以,我的问题是:如何在远程帮助下在真实设备中选择任何东西(即列表项,按钮)?
最后,经过大量的研发,我得到了解决方案.
这是我使用Android TV遥控器进行定向导航的解决方案.
首先,你必须保持项目中的任何一个(即重点Button
,TextView
等等),如下.
而且,你要申请的nextFocusDown
,nextFocusLeft
,nextFocusRight
和nextFocusUp
属性,所以,当你点击电视遥控器导航按钮将火及其相关事件.
有关更多信息,请参阅:
Android用户界面设计:控制焦点顺序的基础知识,
创建电视导航.