对于我的应用程序,我需要在手机上将方向固定为纵向,并在平板电脑上允许纵向和横向。我在这里查看了答案,但我想尝试单独使用 xml 来做同样的事情。我尝试在清单中添加以下行
<activity
android:theme="@style/Theme.ActionBarLargeTitle"
android:name="com.work.activities.MyActivity"
android:screenOrientation="@integer/orientation_supported"
android:exported = "false"/>
在 res/values/dimens.xml 我添加了以下行(1 对应于纵向)
<integer name="orientation_supported">1</integer>
我创建了另一个文件 res/values-sw600dp/dimens.xml 我在其中添加了(-1 对应于未指定)
<integer name="orientation_supported">-1</integer>
在电话上,此代码工作正常,活动始终处于纵向模式。在 Nexus 10" 平板电脑(宽度 800dp)上,此操作失败,并且在纵向模式下已修复。这种方法有什么问题吗?
编辑: 我已经检查了各种值,并且在所有情况下(在所有设备中)都从 res/values/dimens.xml 中提取了值。如果缺少此值,则安装应用程序时会出现错误“安装错误:INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION”。