我该使用哪个资源标识符来区分Google电视和像Galaxy S3这样的手机?layout-sw720dp不起作用?
我该使用哪个资源标识符来区分Google电视和像Galaxy S3这样的手机?layout-sw720dp不起作用?
您可以使用tvdpi
:
这是介于mdpi和hdpi之间的屏幕资源,大约为213dpi。这不被视为“主要”密度组。它主要用于电视,大多数应用程序不需要它 - 为大多数应用程序提供mdpi和hdpi资源并且系统会根据需要进行缩放即可。如果您发现有必要提供tvdpi资源,则应将其大小调整为1.33 * mdpi的因子。例如,对于mdpi屏幕,100px x 100px的图像应为133px x 133px以适应tvdpi。
电视设置 可寻址屏幕尺寸(以像素为单位)密度标识符 屏幕密度(以dp为单位)显示分辨率(以dp为单位)屏幕尺寸标识符
720p 1280 x 720 px tvdpi 213 960 x 540 大型
1080p 1920 x 1080 px xhdpi 320 960 x 540 大型
此内容来自:https://developers.google.com/tv/android/docs/gtv_android_patterns
有关显示指南的更详细信息:https://developers.google.com/tv/android/docs/gtv_displayguide
我尝试了tvdpi,但不幸的是Galaxy S3正在获取它的资源。最终我使用了layout和layout-large来处理资源。Nexus和Google电视从layout-large获取它们的资源,而Galaxy S3则从layout获取它的资源。谢谢。
tvdpi
不包括Galaxy Nexus,但您可能不应仅使用它来尝试识别Google TV设备。Nexus 7也使用tvdpi
。(http://android-developers.blogspot.com/2012/07/getting-your-app-ready-for-jelly-bean.html) - kabuko