我开发了一个应用程序并将其方向配置为横向,因此它将始终显示在设备的横向视图中。
现在我想将设备旋转180度倒置,当用户将设备上下颠倒180度时,它会相应调整并正确显示给用户。如果我将设备旋转180度倒置,我的应用程序没有t根据旋转进行相应调整,以便反向显示(从下到上),例如:假设我的活动在顶部有2个文本字段,在底部有2个按钮,所以如果你将设备旋转180度倒置,活动没有相应调整,因此用户可以看到顶部的按钮,文本字段位于底部,这是错误的,它应根据设备旋转调整/旋转,并且必须在顶部显示文本字段,在底部显示按钮。
请提供有价值的解决方案来解决此问题。
此致 皮克斯
答案 0 :(得分:17)
指定:
android:screenOrientation="sensorLandscape"
在AndroidManifest.xml
中。这将在landscape和reverseLandscape之间转换应用程序。
答案 1 :(得分:6)
在AndroidManifest.xml
文件中,您需要配置<activity>
以使用传感器的方向。这应该是默认值,但是您可以使用android:screenOrientation="fullSensor"
将其强制转换为传感器的所有4个可能方向的方向。见http://developer.android.com/guide/topics/manifest/activity-element.html#screen
编辑:如果您想启用除一个方向以外的所有方向,您可以通过截取方向更改事件并在Activity
中撤消该方向来停用该方向:
public void onConfigurationChanged(Configuration config) {
if (config.orientation != Activity.ORIENTATION_PORTRAIT) {
setRequestedOrientation(config.orientation);
{
}
(这是我的头脑,但认为它有效,或者类似的东西。)
您需要告诉Android让应用处理方向更改,<activity>
android:configChanges="orientation"
。