• [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】向右旋转

  • 相关阅读:
    otter安装、使用
    windows下xampp安装rabbitmq的PHP扩展AMQP
    CentOS7下安装RabbitMQ
    CentOS7下开放端口
    CentOS7下安装Redis
    @b.windows.last.use
    Rspec基本语法
    ruby firefox23报错:waiting for evaluate.js load failed
    notepad++上配置ruby执行环境
    cucumber的hooks
  • 原文地址:https://www.cnblogs.com/strengthen/p/10116515.html
Copyright © 2020-2023  润新知