SimpleOrientationSensor Class

간단한 방향 센서를 나타냅니다.

이 센서는 바로 또는 거꾸로 된 상태뿐 아니라 지정한 장치의 현재 사분면 방향도 탐색합니다.

구문


public sealed class SimpleOrientationSensor

특성

[DualApiPartition()]
[MarshalingBehavior(Agile)]
[Threading(Both)]
[Version(0x06020000)]

멤버

SimpleOrientationSensor클래스에는 다음과 같은 형식의 멤버가 있습니다.

이벤트

SimpleOrientationSensor클래스에는 다음과 같은 이벤트가 있습니다.

이벤트Description
OrientationChanged Occurs each time the simple orientation sensor reports a new sensor reading

 

메서드

The SimpleOrientationSensor 클래스 - 이러한 메서드가 있습니다. C#, Visual Basic 및 C++에서는 다음 위치의 메서드도 상속합니다. Object 클래스.

메서드Description
GetCurrentOrientation Gets the default simple orientation sensor.
GetDefault Gets the default simple orientation sensor.

 

설명

다음 예제에서는 XAML 및 C#로 작성된 Windows 스토어 앱에서 GetDefault 메서드를 사용하여 단순 방향 센서와의 연결을 설정하는 방법을 보여 줍니다. 방향 센서가 없을 경우 메서드는 null 값을 반환합니다.


_sensor = SimpleOrientationSensor.GetDefault();


다음 예제에서는 XAML로 작성된 Windows 스토어 앱이 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);
    }
}


다음 예제에는 방향 표시값을 응용 프로그램의 폼에 쓰는 이벤트 처리기의 XAML 코드가 포함되어 있습니다.


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


요구 사항

지원되는 최소 클라이언트

Windows 8 [Windows 스토어 앱, 데스크톱 앱]

지원되는 최소 서버

지원되는 사항 없음 [Windows 스토어 앱, 데스크톱 앱]

Namespace

Windows.Devices.Sensors
Windows::Devices::Sensors [C++]

Metadata

Windows.winmd

참고 항목

SimpleOrientation 센서 퀵 스타트
SimpleOrientation 센서 샘플

 

 

표시:
© 2014 Microsoft