Compartilhar via


SimpleOrientationSensor Classe

Definição

Representa um sensor de orientação simples.

Para obter um exemplo de implementação, consulte o exemplo de sensor de orientação simples.

Esse sensor detecta a orientação quadrante atual do dispositivo especificado, bem como sua face para cima ou face para baixo status.

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
Herança
Object Platform::Object IInspectable SimpleOrientationSensor
Atributos

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Comentários

O exemplo a seguir demonstra como um aplicativo UWP criado com XAML e C# usa o método GetDefault para estabelecer uma conexão com um sensor de orientação simples. Se nenhum sensor de orientação simples for encontrado, o método retornará um valor nulo.

_sensor = SimpleOrientationSensor.GetDefault();

O exemplo a seguir demonstra como um aplicativo UWP criado com XAML registra um manipulador 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);
    }
}

O exemplo a seguir contém o código XAML para o manipulador de eventos que grava as leituras de orientação no formulário do aplicativo.

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;
    }
}

Histórico de versão

Versão do Windows Versão do SDK Valor adicionado
1809 17763 FromIdAsync
1809 17763 GetDeviceSelector

Propriedades

DeviceId

Obtém o identificador de dispositivo usado no método SimpleOrientationSensor.FromIdAsync .

ReadingTransform

Obtém ou define a transformação que precisa ser aplicada aos dados do sensor. As transformações a serem aplicadas estão vinculadas à orientação de exibição com a qual alinhar os dados do sensor.

Métodos

FromIdAsync(String)

Recupera de forma assíncrona um objeto SimpleOrientationSensor com base no identificador de dispositivo especificado.

GetCurrentOrientation()

Obtém o sensor de orientação simples padrão.

GetDefault()

Obtém o sensor de orientação simples padrão.

GetDeviceSelector()

Recupera uma cadeia de caracteres AQS (Sintaxe de Consulta Avançada) usada para enumerar os dispositivos SimpleOrientationSensor disponíveis.

Eventos

OrientationChanged

Ocorre sempre que o sensor de orientação simples relata uma nova leitura do sensor

Aplica-se a

Confira também