【问题标题】:Android and FireTv UI customization using RowsSupportFragment使用 RowsSupportFragment 自定义 Android 和 FireTv UI
【发布时间】:2020-09-11 12:28:51
【问题描述】:
我是 Android TV 开发的新手,想了解一些事情。我看到使用 Leanback 我们可以实现这一点。关键组件是 BrowseSupportFragment、RowsSupportFragment 等。
我想要的是。
目前,在 BrowseSupportFragment 中,我正在使用 PageRow,这样我就可以为每一行拥有一个自定义片段(扩展 RowsSupportFragment)。我想要的是这个,自定义 Fragment 是一个常规的 Fragment(扩展 Fragment),并且其中有一些 FrameLayouts,对于那个 FrameLayouts,我可以调用不同的 Fragment(RowsSupportFragment)。因此,总结一下,我想要每个 frameLayout 的 BrowseSupportFragment --> Fragment --> RowsSupportFragment 之类的东西,这样我就可以根据需要自定义 UI。
有人可以帮我解决这个问题吗?
【问题讨论】:
标签:
android
androidx
android-tv
leanback
browsefragment
【解决方案1】:
我无法绕过这种情况。所以我最终得到了正常的片段和一些关键点,以防其他人需要相同的片段。
-
android:background="?android:attr/selectableItemBackground"这个给父布局获取当前视图选中效果。
-
方向应该由 onKeyListener 处理这些事件。
一个。 keyCode == KeyEvent.KEYCODE_DPAD_UP
b. keyCode == KeyEvent.KEYCODE_DPAD_DOWN
c。 keyCode == KeyEvent.KEYCODE_DPAD_LEFT
d。 keyCode == KeyEvent.KEYCODE_DPAD_RIGHT
e。 keyCode == KeyEvent.KEYCODE_DPAD_ENTER
(当你按下键盘上的回车键时)
确保检查 event.getAction() == KeyEvent.ACTION_DOWN 否则你会遇到跳过中间视图的问题。
如果有人得到关于问题的正确实现,请更新到那时这是我的解决方案。