构建 TV 布局

电视屏幕通常是在大约 10 英尺(约 3 米)的距离观看的,虽然它比大多数其他 Android 设备屏幕要大得多,但电视屏幕无法提供与较小设备屏幕相同的细节和色彩水平。鉴于这些因素,您在设计应用布局时必须谨记它是用于 TV 设备这一点,才能创造出实用并且令人愉悦的客厅用户体验。

基本布局原则

电视设备的布局必须遵循一些基本准则,以确保它们在大屏幕上可用且有效。请按照以下提示来构建针对 TV 屏幕优化的布局:

  • 构建屏幕方向为横向的布局。电视屏幕始终以横屏模式显示。
  • 将屏幕导航控件置于屏幕的左侧或右侧,将节省下的垂直空间留给内容。
  • 使用自适应和相对尺寸(例如 dpsp 单位),以便用户界面在不同的显示分辨率下实现平滑缩放。
  • 在布局控件之间添加足够的外边距和内边距,以避免界面杂乱无章。

过扫描

由于电视标准的演变,为了向观众呈现全屏画面,电视布局有一些独特的要求。为此,TV 设备可能会裁剪应用布局的外边缘以确保填满整个显示屏。这种行为通常被称为过扫描

将必须始终对用户可见的屏幕元素放置在过扫描安全区域内。在布局的左右边缘添加 48 dp 的 5% 边距,在顶部和底部边缘添加 27 dp 的 5% 边距,有助于确保布局中的屏幕元素位于过扫描安全区域内。

不要调整用户不直接交互的背景屏幕元素,也不要将元素裁剪到过扫描安全区域。此方法有助于确保背景屏幕元素在所有屏幕上看起来都正确。

构建易用的文本和控件

请按照以下提示让 TV 应用中的文本和控件更易于从一定距离处进行查看:

  • 将文本拆分为可让用户快速浏览的小片段。
  • 在深色背景上使用浅色文本。此风格更便于用户查看 TV 上的内容。
  • 避免使用轻量级字体,或者很细的笔划和很粗的笔划兼有的字体。使用无衬线字体和抗锯齿处理来提高可读性。
  • 确保所有视图微件都足够大,对坐在距屏幕 10 英尺远的观众清晰可见。使用密度无关像素 (dp) 单位而非绝对像素单位,并使用可缩放像素 (sp) 单位进行排版。

如需详细了解密度无关像素以及如何构建布局来适应更大的屏幕尺寸,请参阅屏幕兼容性概览

管理 TV 布局资源

与其他所有安卓设备一样,电视机的屏幕尺寸各不相同,并支持不同的分辨率,包括 720p、1080p 和 4K。确保您的应用支持不同的屏幕尺寸

不同的屏幕尺寸和分辨率具有不同的像素密度。为了在不同屏幕尺寸、分辨率和像素密度下保持界面外观一致,请使用密度无关像素 (dp) 定义界面尺寸。下表列出了不同电视面板分辨率对应的屏幕像素密度:

面板分辨率 屏幕像素密度
720p tvdpi
1080p xhdpi
4K xxxhdpi

有关更多信息,请参阅支持不同的像素密度屏幕兼容性概述

应避免的布局模式

有些布局设计方法在电视设备上效果不佳。在开发 TV 布局时,请避免使用以下界面模式:

  • 重用手机或平板电脑布局:请勿不加修改地重用手机或平板电脑应用的布局。专为其他 Android 设备类型构建的布局不太适合 TV 设备,必须针对 TV 操作进行相应的简化。
  • 使用手机操作栏或菜单:顶部操作栏和下拉菜单不适合 TV 界面,因为使用遥控器在此类菜单中进行导航很困难。
  • 仅使用滑动导航: 在手机或平板电脑上滑动屏幕可以很好地完成操作,但不要尝试在电视上使用仅滑动手势,因为电视用户依赖于方向键遥控器。

如需详细了解如何设计适合 TV 的布局,请参阅为 TV 设计

处理大尺寸位图

TV 设备的内存有限。如果您的应用布局使用了分辨率很高的图片,可能很快就会遭遇内存限制,并引发内存不足错误。使用高效的图片加载和解码库(例如 CoilGlide)在应用中提取、解码和显示位图。

如需详细了解如何在使用位图时获得最佳性能,请参阅 Android 图形最佳实践

提供有效广告

对于起居室环境,我们建议您使用全屏且可在 30 秒内关闭的视频广告解决方案。Android TV 上的广告功能(如关闭按钮和点进次数)必须能使用方向键而非通过触摸进行访问。

Android TV 不提供网络浏览器。您的广告不得试图启动网络浏览器或者重定向到未经批准用于 Android TV 设备的 Google Play 商店内容。