swift UI专项训练39 用Swift实现摇一摇功能
2017-07-02 13:41
441 查看
微信的摇一摇功能想必大家都用过。过春节的时候抢红包也没少摇吧。那么用swift语言怎样实现这么酷炫的功能呢。摇动属于IOS内置可识别的一种动作,在你须要实现摇动功能的viewcontroller中,在viewDidLoad方法中增加下面代码:
第一句是要求当前页面支持对摇动事件可编辑的支持,设置为true后我们能够实现对应的方法,稍后会介绍。
第二句是把当前页面作为第一反应者,也就说我们有不论什么操作结果都会反映到当前页面中。
如今我们能够使用与摇动相关的方法了,主要有三个:motionBegin、motionEnded、motionCancelled。
分别捕获摇动開始、摇动结束和摇动取消三个动作。
我们选用motionEnded来举例:
这种方法是在motion结束的时候推断。假设刚才的motion是摇动的话,那么弹出一个警告框,提示“恭喜你,成功了。”。以下我们用我近期在做的一个APP来測试下,这是摇动前的画面:
然后我们摇动手机,看看效果:
你能够在这三个方法中增加自己须要的代码。实现更丰富的功能。
最后再说一点。看网上之前的资料说须要添加方法,由于大部分view不支持firstresponder:
UIApplication.sharedApplication().applicationSupportsShakeToEdit = true self.becomeFirstResponder()
第一句是要求当前页面支持对摇动事件可编辑的支持,设置为true后我们能够实现对应的方法,稍后会介绍。
第二句是把当前页面作为第一反应者,也就说我们有不论什么操作结果都会反映到当前页面中。
如今我们能够使用与摇动相关的方法了,主要有三个:motionBegin、motionEnded、motionCancelled。
分别捕获摇动開始、摇动结束和摇动取消三个动作。
我们选用motionEnded来举例:
override func motionEnded(motion: UIEventSubtype, withEvent event: UIEvent) { if motion == UIEventSubtype.MotionShake { var alertController1 = UIAlertController(title: "恭喜你,成功了! ", message: nil, preferredStyle: .Alert) var cancelAction = UIAlertAction(title: "取消", style: .Cancel, handler: nil) alertController1.addAction(cancelAction) self.presentViewController(alertController1, animated: true, completion: nil) } }
这种方法是在motion结束的时候推断。假设刚才的motion是摇动的话,那么弹出一个警告框,提示“恭喜你,成功了。”。以下我们用我近期在做的一个APP来測试下,这是摇动前的画面:
然后我们摇动手机,看看效果:
你能够在这三个方法中增加自己须要的代码。实现更丰富的功能。
最后再说一点。看网上之前的资料说须要添加方法,由于大部分view不支持firstresponder:
override func canBecomeFirstResponder() -> Bool { return true }可能这是曾经的版本号了。我用的是xcode6.2正式版,亲測是不须要加这种方法的。
相关文章推荐
- swift UI专项训练39 用Swift实现摇一摇功能
- swift UI专项训练39 用Swift实现摇一摇功能
- swift UI专项训练40 用swift实现打电话和发短信功能
- Android 摇一摇功能的实现
- 用HTML5实现手机摇一摇的功能 .
- 第一篇,摇一摇功能的实现
- GridView 实现类似图片'发布'功能
- 利用传感器实现微信的摇一摇功能
- HTML5实现摇一摇的功能(实测后)
- 用HTML5实现手机摇一摇的功能
- 在iOS上实现二维码功能、二维码、条形码、swift 二维码
- 用HTML5实现手机摇一摇的功能
- IFS's ERP刷新后自动选择某行的功能实现
- 微信摇一摇传感功能实现
- (android实战)实现摇一摇功能
- 利用传感器实现微信的摇一摇功能
- 用HTML5实现手机摇一摇的功能
- 利用传感器实现微信的摇一摇功能
- 用HTML5实现手机摇一摇的功能
- 用HTML5实现手机摇一摇的功能的教程