[Xcode 实际操做]1、博主领进门-(5)检测运行中的模拟器在各个方向上的切换

目录:[Swift]Xcode实际操做html

本文将演示Xcode的设备模拟器在各个方向上的切换和检测。swift

在项目导航区,打开视图控制器的代码文件【ViewController.swift】ide

检测运行中的模拟器在各个方向上的切换。post

 1 import UIKit
 2 
 3 class ViewController: UIViewController {
 4 
 5     override func viewDidLoad() {
 6         super.viewDidLoad()
 7         // Do any additional setup after loading the view, typically from a nib.
 8 
 9         //通知中心是专门提供程序中,不一样类间的消息通讯而设置的,使用起来极为方便。
10         //在此用来捕捉手机方向切换事件
11         NotificationCenter.default.addObserver(self,
12                     selector: #selector(ViewController.orientationChanged(_:)),
13                     name: UIDevice.orientationDidChangeNotification, object: nil)
14         
15     }
16     
17     //新建一个捕捉设备方向变化的方法,用来响应设备方向切换的事件
18     @objc func orientationChanged(_ notification: Notification){
19         //得到当前运行中的设备
20         let deivce = UIDevice.current
21         //获取并遍历设备的方向,输出关于屏幕方向的日志
22         switch deivce.orientation
23         {
24             //屏幕直立
25             case .portrait:
26                 print("面向设备保持垂直,Home键位于下部")
27             //屏幕直立上下方向颠倒
28             case .portraitUpsideDown:
29                 print("面向设备保持垂直,Home键位于上部")
30             //屏幕横向且在左侧
31             case .landscapeLeft:
32                 print("面向设备保持水平,Home键位于右侧")
33             //屏幕横向且在右侧
34             case .landscapeRight:
35                 print("面向设备保持水平,Home键位于左侧")
36             //屏幕面朝上
37             case .faceUp:
38                 print("设备平放,Home键朝上")
39             //屏幕面朝下
40             case .faceDown:
41                 print("设备平放,Home键朝下")
42             //没法得到屏幕状态的状况
43             case .unknown:
44                 print("方向未知")
45         }
46     }
47 }

旋转模拟器:spa

【Hardware】硬件->【Rotate Left】向左旋转日志

【Hardware】硬件->【Rotate Right】向右旋转code

相关文章
相关标签/搜索