Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android屏幕方向:纵向不';行不通_Android_Layout_Screen Orientation - Fatal编程技术网

Android屏幕方向:纵向不';行不通

Android屏幕方向:纵向不';行不通,android,layout,screen-orientation,Android,Layout,Screen Orientation,我希望我的活动只在纵向模式下运行,所以我尝试了不同的方法,但没有一种有效。。。这是: 舱单: <application android:name=".App" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme

我希望我的活动只在纵向模式下运行,所以我尝试了不同的方法,但没有一种有效。。。这是:

舱单:

<application
        android:name=".App"
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:screenOrientation="portrait"
            android:configChanges="keyboardHidden|orientation"
            android:theme="@style/AppTheme.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name="intent.to.front" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
这是我的布局

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout"
    android:layout_width="match_parent" android:layout_height="match_parent"
    android:fitsSystemWindows="true" tools:openDrawer="start">

    <include layout="@layout/app_bar_main" android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <android.support.design.widget.NavigationView android:id="@+id/nav_view"
        android:layout_width="wrap_content" android:layout_height="match_parent"
        app:itemIconTint="@color/grey"
        android:layout_gravity="start" android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_main" app:menu="@menu/activity_main_drawer" />

</android.support.v4.widget.DrawerLayout>

结果是:它不允许我旋转,但当我旋转时,整个应用程序冻结,在我将其旋转回portrate之前无法执行任何操作


帮帮我,伙计们

添加
android:screenOrientation=“肖像”
可以简单地实现以下目的:

<activity android:name=".YourActivity"
    android:configChanges="orientation"
    android:screenOrientation="portrait"/>

添加
android:screenOrientation=“肖像”
可以简单地实现以下功能:

<activity android:name=".YourActivity"
    android:configChanges="orientation"
    android:screenOrientation="portrait"/>

首先

检查主题样式是否有屏幕方向代码,如果有,请将其删除

然后删除

<intent-filter>
    <action android:name="intent.to.front" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>

我不知道你为什么用这个。尝试将其删除,然后首先选中

检查主题样式是否有屏幕方向代码,如果有,请将其删除

然后删除

<intent-filter>
    <action android:name="intent.to.front" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>

我不知道你为什么用这个。尝试删除它,然后选中此复选框

肖像
YourActivity.this.setRequestedOrientation(ActivityInfo.SCREEN\u ORIENTATION\u肖像)

横向
YourActivity.this.setRequestedOrientation(ActivityInfo.SCREEN\u ORIENTATION\u横向)

试试这个

肖像
YourActivity.this.setRequestedOrientation(ActivityInfo.SCREEN\u ORIENTATION\u肖像)

横向
YourActivity.this.setRequestedOrientation(ActivityInfo.SCREEN\u ORIENTATION\u横向)

当您使用:

setRequestedOrientation(ActivityInfo.SCREEN\u ORIENTATION\u Picture)

这将忽略清单文件中方向的所有设置,即使屏幕旋转已关闭,它也将旋转

您必须首先从onCreate方法中删除此命令,然后将其写入清单,这样它就可以工作了:

   <activity
        android:name=".MainActivity"
        android:screenOrientation="portrait"
        android:theme="@style/AppTheme.NoActionBar">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

当您使用:

setRequestedOrientation(ActivityInfo.SCREEN\u ORIENTATION\u Picture)

这将忽略清单文件中方向的所有设置,即使屏幕旋转已关闭,它也将旋转

您必须首先从onCreate方法中删除此命令,然后将其写入清单,这样它就可以工作了:

   <activity
        android:name=".MainActivity"
        android:screenOrientation="portrait"
        android:theme="@style/AppTheme.NoActionBar">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

当您声明一个横向或纵向值时,它是 被认为是一个硬要求的方向,在其中 活动运行。因此,您声明的值将启用按进行筛选 Google Play等服务,使您的应用程序仅对用户可用 支持活动所需方向的设备。对于 例如,如果您声明“景观”、“反向景观”或 “传感器景观”,则您的应用程序将仅对 支持横向定位的设备。然而,你也应该 显式声明应用程序需要纵向或纵向 元素的横向定位。例如 . 这 这纯粹是Google Play(和其他公司)提供的一种过滤行为 支持它的服务)和平台本身不控制 当设备仅支持某些功能时,是否可以安装应用程序 方向

如果要忽略此错误,请执行以下操作:

    <activity
        android:name="YourActivity"
        ...
        android:screenOrientation="portrait"
        tools:ignore="LockedOrientationActivity">
第页

当您声明一个横向或纵向值时,它是 被认为是一个硬要求的方向,在其中 活动运行。因此,您声明的值将启用按进行筛选 Google Play等服务,使您的应用程序仅对用户可用 支持活动所需方向的设备。对于 例如,如果您声明“景观”、“反向景观”或 “传感器景观”,则您的应用程序将仅对 支持横向定位的设备。然而,你也应该 显式声明应用程序需要纵向或纵向 元素的横向定位。例如 . 这 这纯粹是Google Play(和其他公司)提供的一种过滤行为 支持它的服务)和平台本身不控制 当设备仅支持某些功能时,是否可以安装应用程序 方向

如果要忽略此错误,请执行以下操作:

    <activity
        android:name="YourActivity"
        ...
        android:screenOrientation="portrait"
        tools:ignore="LockedOrientationActivity">

页,尽管对某些人来说可能并不明显;如果您使用的是远程设备(使用wifi),则需要卸载应用程序,然后通过有线重新安装。希望这能解决你的问题。

尽管对某些人来说可能并不明显;如果您使用的是远程设备(使用wifi),则需要卸载应用程序,然后通过有线重新安装。希望这能解决您的问题。

我使用了相同的android:screenOrientation=“纵向”仅使我的应用程序仅处于纵向模式。。。没有什么比这更神奇的了。。但我已经为每一个活动指定了这一点OK伙计们,我发现android:screenOrientation=“肖像”和confichanges适用于所有其他活动,但MainActivity我使用相同的android:screenOrientation=“肖像”只是让我的应用程序只处于肖像模式。。。没有什么比这更神奇的了。。但是我已经为每一个活动指定了这一点OK伙计们,我发现android:screenOrientation=“肖像”和ConficChanges适用于所有其他活动,但MainActivity正如我说的,我在第一时间尝试过,但仍然不起作用。我不知道为什么我说我一开始就试过了,但还是不起作用。我不知道为什么,你没有很好地阅读描述。这是我尝试的第二件事,正如我所说,我从清单文件中删除了添加的行。在此之前,我尝试了这个方法,甚至没有添加代码:setRequestedOrientation(ActivityInfo.SCREEN\u ORIENTATION\u grait);到主要活动课。奇怪的事情发生了,伙计,你没看懂描述。那是2n