Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.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
Java 当我的设备将方向更改为纵向倒置(180度)时,如何获得通知?_Java_Android_Android Layout_Android Orientation_Android Screen - Fatal编程技术网

Java 当我的设备将方向更改为纵向倒置(180度)时,如何获得通知?

Java 当我的设备将方向更改为纵向倒置(180度)时,如何获得通知?,java,android,android-layout,android-orientation,android-screen,Java,Android,Android Layout,Android Orientation,Android Screen,当我的设备旋转180度时,我需要激活一些东西(getRotation()应该返回2)。然而,我只读的帖子说,0度、90度和270度是收到通知的唯一角度。这个设备是专用的吗? 什么设备返回2 每当您旋转设备时,都会调用活动的onCreate()方法,因此您可以通过调用活动的onCreate()来查找设备的旋转: 但是,它不会检测到旋转常数2。根据API,未指定是方向的默认值: 默认值。系统选择方向。它的政策 用途以及在特定环境中所做的选择可能会有所不同 从一个设备到另一个设备 我猜screenOr

当我的设备旋转180度时,我需要激活一些东西(getRotation()应该返回2)。然而,我只读的帖子说,0度、90度和270度是收到通知的唯一角度。这个设备是专用的吗?
什么设备返回2

每当您旋转设备时,都会调用活动的
onCreate()
方法,因此您可以通过调用活动的
onCreate()
来查找设备的旋转:

但是,它不会检测到旋转常数2。根据API,未指定是方向的默认值:

默认值。系统选择方向。它的政策 用途以及在特定环境中所做的选择可能会有所不同 从一个设备到另一个设备

我猜
screenOrientation:unspecified
无法检测所有4个角度。从API中我们还可以看到几个选项,其中一个是“fullsensor”,API声明:

方向由任何设备的设备方向传感器确定 四个方向中的一个。这与“传感器”类似,只是允许 4种可能的屏幕方向中的任意一种,无论 设备正常运行(例如,某些设备不正常使用 反向纵向或反向横向,但这将启用这些)。补充 在API级别9中

因此,要解决此问题,请转到清单文件并向活动添加屏幕方向,如下所示:

<activity
        android:name="com.example.androidactivitystart.ActivityA"
        android:label="@string/app_name"
        android:screenOrientation="fullSensor" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

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

我们只对180度感兴趣,或者说横向检测能解决您的问题吗?我现在和以前的手机都不做倒立拍摄,所以我猜是特定于设备的。
<activity
        android:name="com.example.androidactivitystart.ActivityA"
        android:label="@string/app_name"
        android:screenOrientation="fullSensor" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

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