Android TV:从ListRowPresenter

时间:2018-07-23 07:10:22

标签: android android-tv leanback

当该水平列表不清晰时,我正在尝试从列表项中删除阴影。我从RowSupportFragment扩展了片段,然后像这样创建ListRowPresenter

val listRowPresenter = ListRowPresenter(FocusHighlight.ZOOM_FACTOR_XSMALL)
    listRowPresenter.shadowEnabled = false
    ArrayObjectAdapter listRowAdapter = ArrayObjectAdapter(listRowPresenter)

,然后在数据来自服务器时添加两个ArrayObjectAdapter

    listRowAdapter?.add(ListRow(null, objectAdapter1))
    listRowAdapter?.add(ListRow(null, objectAdapter2))

listRowPresenter.shadowEnabled = false行是要从列表行中删除阴影,但没有给出所需的行为。任何人都可以指出一些有用的类或示例吗?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案,我将其发布以供将来参考。如果要从未选中的行中删除阴影,则需要将其添加到ListRowPresenter中。

    listRowPresenter.shadowEnabled = false
    listRowPresenter.selectEffectEnabled = false

,它将删除项目中的阴影。要进行更多自定义,您可以覆盖ShadowOverlayHelper内部初始化的ListRowPresenter类。