zoukankan      html  css  js  c++  java
  • [Xcode 实际操作]一、博主领进门-(5)检测运行中的模拟器在各个方向上的切换

    目录:[Swift]Xcode实际操作

    本文将演示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】向右旋转

  • 相关阅读:
    我的浏览器收藏夹分类
    我的浏览器收藏夹分类
    Java实现 LeetCode 318 最大单词长度乘积
    Java实现 LeetCode 318 最大单词长度乘积
    Java实现 LeetCode 318 最大单词长度乘积
    Java实现 LeetCode 316 去除重复字母
    Java实现 LeetCode 316 去除重复字母
    Java实现 LeetCode 316 去除重复字母
    Java实现 LeetCode 315 计算右侧小于当前元素的个数
    Java实现 LeetCode 315 计算右侧小于当前元素的个数
  • 原文地址:https://www.cnblogs.com/strengthen/p/10116515.html
Copyright © 2011-2022 走看看