您的位置:首页 > 其它

30.iPhone的电源传感器简单介绍

2015-12-27 17:12 369 查看
继续我们上一章的内容, 这次我们讲解的是电源传感器, 简单来讲就是电池的状态, 每当电池发生变化时, 就回去调用一下电源传感器, 比如充电, 耗电之类的.

PS: 已经更新到Swift 2.1, 支持iOS 9.1

1.实现代码

[code]import UIKit
import CoreMotion

class ViewController: UIViewController {

    var cmm: CMMotionManager!

    override func viewDidLoad() {
        super.viewDidLoad()

        // 1.实例化CMMotionManager
        cmm = CMMotionManager()
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }

    override func viewWillAppear(animated: Bool) {
        // 1.打开电源传感器
        UIDevice.currentDevice().batteryMonitoringEnabled = true

        // 2.打印电池的电量, 1.0表示已经充满
        println("电池电量 = \(UIDevice.currentDevice().batteryLevel)")

        // 3.添加一个通知, 每当电池一旦有变化, 就调用levelChanged方法
        NSNotificationCenter.defaultCenter().addObserver(self, selector: Selector("levelChanged"), name: UIDeviceBatteryLevelDidChangeNotification, object: nil)
    }

    // 4.关掉页面之后, 把通知删除
    override func viewDidDisappear(animated: Bool) {
        // 4.1.这里我们对删除通知的名字做一个详细的处理, 这样子我们就可以不会在多通知的情况下把别的通知给删除.
        NSNotificationCenter.defaultCenter().removeObserver(self, name: UIDeviceBatteryLevelDidChangeNotification, object: nil)
    }

    // 5.自定义打印电池电量的方法
    func levelChanged() {
        println("电池电量 = \(UIDevice.currentDevice().batteryLevel)")
    }
}


2.最终效果



项目工程: 链接: http://pan.baidu.com/s/1kTMuI03 密码: 3kqm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: