【问题标题】:How to use AppCompatActivity in Android TV on full screen?如何在 Android TV 中全屏使用 AppCompatActivity?
【发布时间】:2016-11-05 13:18:53
【问题描述】:

我为安卓平台编写了一个游戏。该游戏目前在商店处于测试阶段。要查看它在设备上的外观,您可以从此处下载它:Brainy: Play to learn!

现在我正在尝试将这款游戏移植到 Android TV 平台,但由于某种原因,当游戏在 TV 上运行时,它并没有占用整个屏幕空间,而是在屏幕中间的一个正方形中运行。在更好的情况下看起来像这样:

在最坏的情况下也是这样:

现在对于我应用程序中的所有活动,我使用AppCompatActivity,这意味着这些活动的主题应该是或继承自Theme.AppCompat。 我认为这是这种情况下的问题。

因为电视活动应该有Theme.Leanback

是否有人在这里处理过这种情况并知道如何处理。我已经尝试了应用程序的所有主题组合和我能想到的活动,但到目前为止找不到解决方案。

【问题讨论】:

  • 你游戏的方向是什么?您是否将主题设置为 android:theme="@style/Theme.Leanback 如此处所述Building Layouts for TV
  • 电视应用程序中所有屏幕的方向都是横向的。对于我在问题中所说的主题,我必须使用从 AppCompat 继承的东西,因为我所有的活动都是 AppCompatActivities。 Theme.Leanback 不是那些主题之一......所以我只将它用于应用程序主题。

标签: android android-tv android-fullscreen


【解决方案1】:

最后我设法解决了这个问题,问题是我用于活动的主题。我使用Theme.AppCompat.Light.NoActionBar.FullScreen 作为我所有活动的基本主题。

事实证明,在电视上使用 FullScreen 主题实际上会像上面的屏幕截图那样以正方形显示应用程序,而不是全屏显示。

将此基本主题更改为Theme.AppCompat.Light.NoActionBar 解决了该问题。 现在应用程序全屏显示。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-20
    • 2019-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    相关资源
    最近更新 更多