快速构建Windows 8风格应用10-设备方向

本篇博文主要介绍常用支持Windows 8操作系统设备的方向、如何获取当前设备方向、DisplayProperties类

常用支持Windows 8 操作系统设备的方向
在我们常用的设备当中,Windows 8是通过什么来监控设备方向呢?答案是 方向传感器,那么对于设备的不同方向,方向传感器都对应哪些方向值呢?如下表: 快速构建Windows 8风格应用10-设备方向_第1张图片
我们可以从表中知道:
1) 设备方向为水平方向向上(Portrait Up 时,对应传感器值为NotRotated (未发生旋转)
我们可以通过对比设备中 Windows 按钮的位置来识别不同方向,如下图所示: 快速构建Windows 8风格应用10-设备方向_第2张图片
2) 设备方向为 竖直方向向左( Landscape Left 时,对应传感器值为 Rotated90DegreesCounterclockwise (旋转90 度);我们可以通过对比设备中 Windows 按钮的位置来识别不同方向,如下图所示: 快速构建Windows 8风格应用10-设备方向_第3张图片
3) 设备方向为 水平方向向下( Portrait Down 时,对应传感器值为 Rotated180DegreesCounterclockwise (旋转180 度),我们可以通过对比设备中 Windows 按钮的位置来识别不同方向,如下图所示: 快速构建Windows 8风格应用10-设备方向_第4张图片
4) 设备方向为 竖直方向向右( Landscape Right 时,对应传感器值为 Rotated270DegreesCounterclockwise (旋转270 度);我们可以通过对比设备中 Windows 按钮的位置来识别不同方向,如下图所示: 快速构建Windows 8风格应用10-设备方向_第5张图片
5) 设备方向为 正面朝上( Face Up 时,对应传感器值为 Faceup
6) 设备方向为 正面朝下( Face Down 时,对应传感器值为 Facedown
 
如何获取当前设备方向值
我们如何在代码中获取这么设备方向值呢?
第一步:初始化SimpleOrientationSensor传感器对象。
第二步:注册传感器OrientationChanged事件。
第三步:在 OrientationChanged事件方法中通过e. Orientation属性得到方向值。
具体代码可如下: 快速构建Windows 8风格应用10-设备方向_第6张图片 快速构建Windows 8风格应用10-设备方向_第7张图片
代码中DisplayOrientation方法如下: 快速构建Windows 8风格应用10-设备方向_第8张图片
假如我们使用XAML+C#来编写一个游戏类应用,就可以通过监控设备放向值的改变来控制游戏人物的不同状态了。
 
DisplayProperties
微软为开发者提供了一个非常重要的类: DisplayProperties。我们获取设备方向值的代码都是通过该类来实现的。
那么DisplayProperties类包含哪些重要事件和属性呢?
1) OrientationChanged事件:当方向变更时该事件被触发;
2) CurrentOrientation属性:该属性为只读属性,获取当前设备的方向;
3) NativeOrientation属性:该属性为只读属性,获取设备默认支持的方向,包含两个值:Landscape和Portrait;
4) AutoRotationPreferences属性:该属性为可读写属性,通过该属性可以读取或设置我们应用的首选方向。 注意:模拟器中无法支持该属性的设置。

本文出自 “王祖康” 博客,请务必保留此出处http://wzk89.blog.51cto.com/1660752/1005930

你可能感兴趣的:(windows,windows,8,win8风格)