如何lockingandroid应用程序的方向肖像模式?

我正在开发一个Android应用程序,当用户旋转设备时,其方向我不想更改为横向模式。 另外,我想locking的方向是在手机上的肖像模式和平板电脑上的横向模式。 可以这样做,如果是的话,怎么样? 谢谢。

您只需在AndroidManifest.xml文件的activity元素中定义下面的属性。 它会限制你的方向肖像。

机器人:screenOrientation = “画像”

例:

  <activity android:name="com.example.demo_spinner.MainActivity" android:label="@string/app_name" android:screenOrientation="portrait" > </activity> 

另外,根据下面的Eduard Luca的评论,如果你想旋转180度,你也可以使用screenOrientation="sensorPortrait"

您必须在AndroidManifest.xml添加android:screenOrientation="portrait"指令。 这是在你的<activity>标签中完成的。

另外,Android开发者指南指出:

您还应该明确声明您的应用程序需要纵向或横向的元素。 例如, <uses-feature android:name="android.hardware.screen.portrait" />

我可以看到你接受了一个并不能完全解决你的问题的答案:

 android:screenOrientation="portrait" 

这将迫使您的应用在手机和平​​板电脑上都是肖像。

您可以通过使用设备的“首选”方向强制应用程序

 android:screenOrientation="nosensor" 

这将导致您的应用强制在大多数手机上使用平板电脑进行纵向拍摄。 有很多手机键盘devise为横向模式。 强制您的应用程序肖像可以使这些设备几乎无法使用。 Android最近也正在迁移到其他types的设备。 最好让设备select首选的方向。

这可能是..你必须确定它是平板电脑或手机编程…

 if(isTablet) { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); }else { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); } 
 <activity android:name=".yourActivity" android:screenOrientation="portrait" ... /> 

添加到主要活动并添加

 android:configChanges="keyboardHidden" 

在键盘被调用时保持你的程序不改变模式。

在活动标签下的清单文件中将屏幕方向设置为纵向。