以横向方式举行电话时,活动无法启动

时间:2016-02-15 06:46:31

标签: android android-activity

当手机以纵向方式举行时,活动启动并运行良好但是当我通过手持横向启动我的应用程序时,应用程序无法启动或屏幕变黑并持续一毫秒且没有任何反应。当我从代码

中删除它时,问题就消失了
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

但这很重要,因为我的申请只会支持肖像。可能是什么问题?

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
        WindowManager.LayoutParams.FLAG_FULLSCREEN);

    setContentView(R.layout.activity_main);
}

3 个答案:

答案 0 :(得分:3)

在你的menifests活动标签中添加此行。

<activity android:name=".SomeActivity"
    android:label="@string/app_name"
    android:screenOrientation="sensorPortrait" />

并删除

 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

来自您的活动

答案 1 :(得分:2)

删除此行

 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

以上行将使活动保持在纵向模式。只需添加SensorPortrait模式。

android:screenOrientation="sensorPortrait" 

在清单中。

答案 2 :(得分:1)

从代码中删除此行

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 

添加方向布局,如下所示:

<activity android:name=".SomeActivity"
    android:label="@string/app_name"
    android:screenOrientation="portrait" />