【问题标题】:Remove SearchOrbView Android TV移除 SearchOrbView Android TV
【发布时间】:2015-10-01 19:21:51
【问题描述】:

如何移除 Android TV BrowseFragment 中的 searchOrbView?

我看到了一种设置颜色的方法 (setSearchAffordanceColors),但没有办法真正删除 SearchOrbView

由于 TitleView 是 BrowseFragment 的私有成员(并且 TitleView 是访问 SearchOrbView 的方式),我看不出实际删除 SearchOrbView 的方法

【问题讨论】:

  • 搜索球(根据源代码)只有在您为其设置点击侦听器时才应该可见。这是你目前正在做的事情吗?
  • @dextor 是的,我是,删除监听器后,球体消失了!请将此作为答案,我会接受

标签: android android-tv leanback


【解决方案1】:

根据官方文档,调用setOnSearchClickedListener()会导致搜索球显示在标题视图中。

删除方法调用将使球体消失。

【讨论】:

  • 如何从 VerticalGridFragment 中删除完整的标题视图。我删除了搜索视图图标,但仍有一些空白空间。
  • 同样的事情,我无法删除标题视图,因此 UI 中有一个空白区域占据了真实状态。
  • 这超出了 OP 的范围。另外,我的回答明确指的是搜索球,并且仅指搜索球。您可以设置一个空的(即“”)标题,但仍然会填充空间。 AFAIK,BrowseFragment 没有提供任何禁用标题视图的方法。您可以自定义,使用 github.com/dextorer/Sofagithub.com/dextorer/BuildingForAndroidTV 之类的东西。
  • @Thiago 不确定它对您是否仍然相关或必要,但您可以简单地实现以Theme.Leanback.VerticalGrid 作为父项定义新样式并将项目browseRowsMarginTop 设置为您需要的任何dp 值。然后为实现垂直网格视图的 Activity 设置此主题。
  • @fasteque 谢谢
【解决方案2】:

给不读cmets的人

您可以简单地使用 Theme.Leanback.VerticalGrid 作为父项定义新样式并将 item browseRowsMarginTop 设置为您需要的任何 dp 值。然后为实现垂直网格视图的 Activity 设置此主题。 – 快车

它帮助了我。 样式.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppTheme" parent="@style/Theme.Leanback"></style>
<style name="NoTitleTheme" parent="@style/Theme.Leanback">
    <item name="browseRowsMarginTop">5dp</item>
</style>
</resources>

AndroidManifest.xml ....

<activity
    android:name=".stackedadprogram.StackedAdProgramActivity"
    android:exported="true"
    android:parentActivityName=".launcher.ProgramDetailActivity"
    android:theme="@style/NoTitleTheme" />
....

【讨论】:

    猜你喜欢
    • 2016-05-14
    • 1970-01-01
    • 1970-01-01
    • 2016-07-26
    • 2019-04-06
    • 2017-06-04
    • 1970-01-01
    • 2021-06-10
    • 2017-03-09
    相关资源
    最近更新 更多