1. 程式人生 > >[Xcode10 實際操作]一、博主領進門-(5)檢測運行中的模擬器在各個方向上的切換

[Xcode10 實際操作]一、博主領進門-(5)檢測運行中的模擬器在各個方向上的切換

pan 事件 nib 運行 fun serve port 垂直 當前

本文將演示Xcode的設備模擬器在各個方向上的切換和檢測。

在項目導航區,打開視圖控制器的代碼文件【ViewController.swift】

檢測運行中的模擬器在各個方向上的切換。

 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 }

旋轉模擬器:

【Hardware】硬件->【Rotate Left】向左旋轉

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

[Xcode10 實際操作]一、博主領進門-(5)檢測運行中的模擬器在各個方向上的切換