Compartir a través de


SimpleOrientationSensor Clase

Definición

Representa un sensor de orientación simple.

Para obtener una implementación de ejemplo, consulte el ejemplo de sensor de orientación simple.

Este sensor detecta la orientación cuadrante actual del dispositivo especificado, así como su estado de cara arriba o abajo.

public ref class SimpleOrientationSensor sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class SimpleOrientationSensor final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class SimpleOrientationSensor
Public NotInheritable Class SimpleOrientationSensor
Herencia
Object Platform::Object IInspectable SimpleOrientationSensor
Atributos

Requisitos de Windows

Familia de dispositivos
Windows 10 (se introdujo en la versión 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)

Comentarios

En el ejemplo siguiente se muestra cómo una aplicación para UWP compilada con XAML y C# usa el método GetDefault para establecer una conexión con un sensor de orientación simple. Si no se encuentra ningún sensor de orientación simple, el método devolverá un valor NULL.

_sensor = SimpleOrientationSensor.GetDefault();

En el ejemplo siguiente se muestra cómo una aplicación para UWP compilada con XAML registra un controlador de eventos OrientationChanged .

private void ScenarioEnable(object sender, RoutedEventArgs e)
{
    if (_sensor != null)
    {
        Window.Current.VisibilityChanged += new WindowVisibilityChangedEventHandler(VisibilityChanged);
        _sensor.OrientationChanged += new TypedEventHandler<SimpleOrientationSensor, SimpleOrientationSensorOrientationChangedEventArgs>(OrientationChanged);

        ScenarioEnableButton.IsEnabled = false;
        ScenarioDisableButton.IsEnabled = true;

        // Display the current orientation once while waiting for the next orientation change
        DisplayOrientation(ScenarioOutput_Orientation, _sensor.GetCurrentOrientation());
    }
    else
    {
        rootPage.NotifyUser("No simple orientation sensor found", NotifyType.StatusMessage);
    }
}

El ejemplo siguiente contiene el código XAML para el controlador de eventos que escribe las lecturas de orientación en el formulario de la aplicación.

async private void OrientationChanged(object sender, SimpleOrientationSensorOrientationChangedEventArgs e)
{
    await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
    {
        DisplayOrientation(ScenarioOutput_Orientation, e.Orientation);
    });
}
private void DisplayOrientation(TextBlock tb, SimpleOrientation orientation)
{
    switch (orientation)
    {
        case SimpleOrientation.NotRotated:
            tb.Text = "Not Rotated";
            break;
        case SimpleOrientation.Rotated90DegreesCounterclockwise:
            tb.Text = "Rotated 90 Degrees Counterclockwise";
            break;
        case SimpleOrientation.Rotated180DegreesCounterclockwise:
            tb.Text = "Rotated 180 Degrees Counterclockwise";
            break;
        case SimpleOrientation.Rotated270DegreesCounterclockwise:
            tb.Text = "Rotated 270 Degrees Counterclockwise";
            break;
        case SimpleOrientation.Faceup:
            tb.Text = "Faceup";
            break;
        case SimpleOrientation.Facedown:
            tb.Text = "Facedown";
            break;
        default:
            tb.Text = "Unknown orientation";
            break;
    }
}

Historial de versiones

Versión de Windows Versión del SDK Valor agregado
1809 17763 FromIdAsync
1809 17763 GetDeviceSelector

Propiedades

DeviceId

Obtiene el identificador de dispositivo usado en el método SimpleOrientationSensor.FromIdAsync .

ReadingTransform

Obtiene o establece la transformación que se debe aplicar a los datos del sensor. Las transformaciones que se van a aplicar están vinculadas a la orientación de la pantalla con la que alinear los datos del sensor.

Métodos

FromIdAsync(String)

Recupera de forma asincrónica un objeto SimpleOrientationSensor basado en el identificador de dispositivo especificado.

GetCurrentOrientation()

Obtiene el sensor de orientación simple predeterminado.

GetDefault()

Obtiene el sensor de orientación simple predeterminado.

GetDeviceSelector()

Recupera una cadena de sintaxis de consulta avanzada (AQS) que se usa para enumerar los dispositivos SimpleOrientationSensor disponibles.

Eventos

OrientationChanged

Se produce cada vez que el sensor de orientación simple informa de una nueva lectura del sensor.

Se aplica a

Consulte también