Swift-Determine the direction of the device (or change the direction of the monitoring device)

Source: Internet
Author: User

With Uidevice.currentdevice () to get the device, you can get the current orientation of the device.

At the same time, we can add a notification to monitor the changes in the direction of the device, so that in the development of different directions can be customized different layout interface.
The following example shows how to monitor the device orientation:

123456789101112131415161718192021222324252627282930313233343536373839404142 import UIKitclass ViewController: UIViewController {        @IBOutlet weak var orientationLabel: UILabel!        override func viewDidLoad() {        super.viewDidLoad()                //感知设备方向 - 开启监听设备方向        UIDevice.currentDevice().beginGeneratingDeviceOrientationNotifications()        //添加通知,监听设备方向改变        NSNotificationCenter.defaultCenter().addObserver(self, selector: "receivedRotation",            name: UIDeviceOrientationDidChangeNotification, object: nil)                //关闭设备监听        //UIDevice.currentDevice().endGeneratingDeviceOrientationNotifications()    }        //通知监听触发的方法    func receivedRotation(){        var device = UIDevice.currentDevice()        switch device.orientation{            case .Portrait:                orientationLabel.text = "面向设备保持垂直,Home键位于下部"            case .PortraitUpsideDown:                orientationLabel.text = "面向设备保持垂直,Home键位于上部"            case .LandscapeLeft:                orientationLabel.text = "面向设备保持水平,Home键位于左侧"            case .LandscapeRight:                orientationLabel.text = "面向设备保持水平,Home键位于右侧"            case .FaceUp:                orientationLabel.text = "设备平放,Home键朝上"            case .FaceDown:                orientationLabel.text = "设备平放,Home键朝下"            case .Unknown:                orientationLabel.text = "方向未知"            default:                orientationLabel.text = "方向未知"        }    }}

Swift-Determine the direction of the device (or change the direction of the monitoring device)

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.