IOS实用功能-陀螺仪

//
//  ViewController.swift
//  Dome2test
//
//  Created by 郭文亮 on 2018/11/22.
//  Copyright © 2018年 finalliang. All rights reserved.
//

import UIKit
//提供了加速值、旋转速度、三位姿态信息
import CoreMotion

class ViewController: UIViewController {

    //是框架提供的一个运动管理类
    var motionManager: CMMotionManager!
    var label:UILabel!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        label = UILabel()
        label.frame = CGRect(x: 40, y: 80, width: 240, height: 90)
        label.text = "waiting"
        label.backgroundColor = UIColor.orange
        label.numberOfLines = 3
        self.view.addSubview(label)
        
        //初始化运动管理类
        motionManager = CMMotionManager()
        //更新频率为10赫兹。每秒采样10次
        motionManager.accelerometerUpdateInterval = 0.1
        //检查传感器在设备中是否可用
        if motionManager.isAccelerometerAvailable {
            //使用推送的方式开始对传感器进行检测
            motionManager.startAccelerometerUpdates(to: .main, withHandler: {(accelerometerData:CMAccelerometerData?,error:Error?) -> Void in
                //如果在运行过程中出现错误,则停止检测
                if error != nil{
                    self.motionManager.stopAccelerometerUpdates()
                }else{
                    //获取设备在三个轴方向上的加速度  并在字符串末尾添加回车符
                    var message = ""
                    message+="x:\(accelerometerData!.acceleration.x)\n"
                    message+="y:\(accelerometerData!.acceleration.y)\n"
                    message+="z:\(accelerometerData!.acceleration.z)"
                    self.label.text = message
                }
            })
        }else{
            print("您的设备不支持此功能")
        }
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

 

你可能感兴趣的:(IOS学习笔记)