启动后禁用屏幕旋转? [复制]
Posted
技术标签:
【中文标题】启动后禁用屏幕旋转? [复制]【英文标题】:Disable screen rotation after started? [duplicate] 【发布时间】:2017-04-19 18:54:55 【问题描述】:应用启动后如何禁用纵向/横向模式?比如说,如果我以 横向模式 启动应用程序,它会保持横向模式。如果我以纵向模式启动它,它会停留在纵向模式?
谢谢
【问题讨论】:
【参考方案1】:请参考以下链接
orientation lock in android programmatically
您可以保持偏好以保持特定的横向/纵向模式
【讨论】:
【参考方案2】:只需执行以下操作,即可以纵向模式启动活动。
在清单中,为所有活动设置此项:
<activity android:name=".YourActivity"
android:configChanges="orientation"
android:screenOrientation="portrait"/>
见here更多讨论
【讨论】:
【参考方案3】:您可以创建两个以横向或纵向模式启动的活动。 要禁用相反的功能,请按照前面的说明进行操作。
android:screenOrientation="portrait"
【讨论】:
【参考方案4】:简单一旦您的应用程序启动,获取设备的方向。然后将该方向设置为您的所有活动。
在您的第一个活动的 onCreate 方法中,像这样获取设备的当前方向
int orientation = getResources().getConfiguration().orientation;
setRequestedOrientation(orientation);
这只会设置当前活动的方向。但是如果你想将整个应用程序设置为这种模式,那么试试这个 像这样创建一个辅助类
Class ActivityHelper
public static void setOrientation(Activity activity,int orientation)
activity.setRequestedOrientation(orientation);
在 setContentView 调用后的 Everyactivity 中
ActivityHelper.setOrientation(this,orientation);//Keep orientation as a static variable
【讨论】:
以上是关于启动后禁用屏幕旋转? [复制]的主要内容,如果未能解决你的问题,请参考以下文章