Skip to content

Most visited

Recently visited

navigation
Added in API level 1
Deprecated since API level 3

OrientationListener

public abstract class OrientationListener
extends Object implements SensorListener

java.lang.Object
   ↳ android.view.OrientationListener


This class was deprecated in API level 3.
use OrientationEventListener instead. This class internally uses the OrientationEventListener.

Helper class for receiving notifications from the SensorManager when the orientation of the device has changed.

Summary

Constants

int ORIENTATION_UNKNOWN

Returned from onOrientationChanged when the device orientation cannot be determined (typically when the device is in a close to flat position).

Public constructors

OrientationListener(Context context)

Creates a new OrientationListener.

OrientationListener(Context context, int rate)

Creates a new OrientationListener.

Public methods

void disable()

Disables the OrientationListener.

void enable()

Enables the OrientationListener so it will monitor the sensor and call onOrientationChanged(int) when the device orientation changes.

void onAccuracyChanged(int sensor, int accuracy)

Called when the accuracy of a sensor has changed.

abstract void onOrientationChanged(int orientation)

Look at onOrientationChanged(int) for method description and usage

void onSensorChanged(int sensor, float[] values)

Called when sensor values have changed.

Inherited methods

From class java.lang.Object
From interface android.hardware.SensorListener

Constants

ORIENTATION_UNKNOWN

Added in API level 1
int ORIENTATION_UNKNOWN

Returned from onOrientationChanged when the device orientation cannot be determined (typically when the device is in a close to flat position).

See also:

Constant Value: -1 (0xffffffff)

Public constructors

OrientationListener

Added in API level 1
OrientationListener (Context context)

Creates a new OrientationListener.

Parameters
context Context: for the OrientationListener.

OrientationListener

Added in API level 3
OrientationListener (Context context, 
                int rate)

Creates a new OrientationListener.

Parameters
context Context: for the OrientationListener.
rate int: at which sensor events are processed (see also SensorManager). Use the default value of SENSOR_DELAY_NORMAL for simple screen orientation change detection.

Public methods

disable

Added in API level 1
void disable ()

Disables the OrientationListener.

enable

Added in API level 1
void enable ()

Enables the OrientationListener so it will monitor the sensor and call onOrientationChanged(int) when the device orientation changes.

onAccuracyChanged

Added in API level 1
void onAccuracyChanged (int sensor, 
                int accuracy)

Called when the accuracy of a sensor has changed. See SensorManager for details.

Parameters
sensor int: The ID of the sensor being monitored
accuracy int: The new accuracy of this sensor.

onOrientationChanged

Added in API level 1
void onOrientationChanged (int orientation)

Look at onOrientationChanged(int) for method description and usage

Parameters
orientation int: The new orientation of the device.

See also:

onSensorChanged

Added in API level 1
void onSensorChanged (int sensor, 
                float[] values)

Called when sensor values have changed. The length and contents of the values array vary depending on which sensor is being monitored. See SensorManager for details on possible sensor types.

Definition of the coordinate system used below.

The X axis refers to the screen's horizontal axis (the small edge in portrait mode, the long edge in landscape mode) and points to the right.

The Y axis refers to the screen's vertical axis and points towards the top of the screen (the origin is in the lower-left corner).

The Z axis points toward the sky when the device is lying on its back on a table.

IMPORTANT NOTE: The axis are swapped when the device's screen orientation changes. To access the unswapped values, use indices 3, 4 and 5 in values[].

SENSOR_ORIENTATION, SENSOR_ORIENTATION_RAW:

All values are angles in degrees.

values[0]: Azimuth, rotation around the Z axis (0<=azimuth<360). 0 = North, 90 = East, 180 = South, 270 = West

values[1]: Pitch, rotation around X axis (-180<=pitch<=180), with positive values when the z-axis moves toward the y-axis.

values[2]: Roll, rotation around Y axis (-90<=roll<=90), with positive values when the z-axis moves toward the x-axis.

Note that this definition of yaw, pitch and roll is different from the traditional definition used in aviation where the X axis is along the long side of the plane (tail to nose).

SENSOR_ACCELEROMETER:

All values are in SI units (m/s^2) and measure contact forces.

values[0]: force applied by the device on the x-axis

values[1]: force applied by the device on the y-axis

values[2]: force applied by the device on the z-axis

Examples:

  • When the device is pushed on its left side toward the right, the x acceleration value is negative (the device applies a reaction force to the push toward the left)
  • When the device lies flat on a table, the acceleration value is -STANDARD_GRAVITY, which correspond to the force the device applies on the table in reaction to gravity.
  • SENSOR_MAGNETIC_FIELD:

    All values are in micro-Tesla (uT) and measure the ambient magnetic field in the X, Y and -Z axis.

    Note: the magnetic field's Z axis is inverted.

    Parameters
    sensor int: The ID of the sensor being monitored
    values float: The new values for the sensor.
    This site uses cookies to store your preferences for site-specific language and display options.

    Hooray!

    This class requires API level or higher

    This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

    For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

    Take a one-minute survey?
    Help us improve Android tools and documentation.