我刚刚实现了方向更改功能 - 例如,当布局从纵向更改为横向时(反之亦然).如何检测方向更改事件何时完成.
在OrientationEventListener没有工作.如何获取有关布局方向更改事件的通知?
我的活动已锁定在 LANDSCAPE 上。但我仍然需要知道设备的方向。所以我选择使用传感器。我有以下代码
sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
sensorManager.registerListener(this, sensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION), SensorManager.SENSOR_DELAY_NORMAL);
...
@Override
public void onSensorChanged(SensorEvent event) {
float[] values = event.values;
// Movement
float azimuth = values[0];
float pitch = values[1];
float roll = values[2];
if ((-110 <= pitch && pitch <= -70) || (70 <= pitch && pitch <= 110)) {
//PORTRAIT MODE
portraitPitch = true;
landscapePitch = false;
Log.d(TAG, "portrait mode: pitch = " + pitch);
} else if ((-20 <= pitch && pitch <= 20) || (-200 …Run Code Online (Sandbox Code Playgroud) android orientation screen-orientation android-sensors android-orientation