有没有一种技术可以只在大型设备上允许横屏?我可以设置活动的manifest.xml文件以根据传感器旋转,例如android:screenOrientation = "sensor",但这并不能提供我想要的行为。例如,我想允许用户在平板电脑上进入横屏模式,但不允许在分辨率较小的设备上(因为界面看起来很糟糕)。据我所知,没有办法在运行时动态响应方向是否可接受。还是有方法吗?我有什么遗漏的吗?先谢谢了!
您能否使用资源文件夹来完成这个任务:
对于较小的横向布局 - 默认情况下:
/layout/main.xml
主布局文件main.xml:orientation="portrait"(在此处强制使用纵向布局而不是在清单文件中指定)
对于高分辨率设备,允许使用纵向布局:
/layout-port-hdpi/main.xml
main.xml 仅适用于竖屏高分辨率设备
您可以从以下文章中获取相关想法:资源类型
Android资源XML内置了针对大屏幕的特定资源。资源目录可以添加后缀-<suffix>
以限定它们是特定于设备能力、地区、时间等类别的。具体而言,您可能会对屏幕尺寸限定符感兴趣,它支持值large
和xlarge
,仅用于为大于4英寸和7英寸的屏幕创建特殊条件。
有关如何支持多个屏幕尺寸的详细信息,请参见this guide,该指南直接来自开发人员手册。