【问题标题】:Android SCREEN_ORIENTATION_PORTRAIT only displays portrait view in landscape modeAndroid SCREEN_ORIENTATION_PORTRAIT 仅在横向模式下显示纵向视图
【发布时间】:2014-03-26 07:07:51
【问题描述】:

我想强制我的项目(目标 sdk 17-19)的一项特殊活动以纵向模式显示。

为此,我放置了:

  • setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT) 在我班的onCreate 活动中,
  • android:configChanges="orientation|screenSize" 在 我的AndroidManifest.xml 的活动部分。

这适用于我的模拟器。

我必须以编程方式进行,因为用户应该决定应该为这个单一活动使用哪个方向

在我的目标设备上(HP Slate 21,Android 4.2.2,没有可用的传感器)我的活动以纵向模式显示,无需旋转屏幕,这意味着左侧有黑条,我视图的右侧,尽管设备仍处于横向模式。

设备是横向的,但视图是纵向的。在模拟器中,设备是横向的,视图是横向的。可能是什么原因?

【问题讨论】:

  • 你可以在androidmanifest.xml中设置activity的orientation属性为portrait,它本身会让你使用你的activity来保持poratit模式

标签: android screen-orientation


【解决方案1】:

这是与 HP 21 / HP 21 Pro 相关的问题。它们的模拟方向不是基于模拟设备,而是由软件挂钩完成的。在平板电脑上测试您的设置将显示您的代码运行正常。

【讨论】:

  • 嘘!非常感谢朋友,这是正确的答案!这个问题似乎不仅出现在 HP Slate 21 上,而且出现在该设备的 Pro 版上。
【解决方案2】:
 <activity android:name=".YourActivity"
            ....
              android:screenOrientation="portrait">

这会对你有所帮助。

【讨论】:

  • 抱歉,我必须以编程方式进行,因为用户应该决定应该为这个单一活动使用哪个方向。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-05
  • 1970-01-01
  • 2015-08-17
  • 1970-01-01
  • 1970-01-01
  • 2013-06-09
  • 1970-01-01
相关资源
最近更新 更多