swift UI专项训练39 用Swift实现摇一摇功能
微信的摇一摇功能想必大家都用过。过春节的时候抢红包也没少摇吧。那么用swift语言怎样实现这么酷炫的功能呢。摇动属于IOS内置可识别的一种动作,在你须要实现摇动功能的viewcontroller中,在viewDidLoad方法中增加下面代码:
UIApplication.sharedApplication().applicationSupportsShakeToEdit = trueself.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正式版,亲測是不须要加这种方法的。
转载于:https://www.cnblogs.com/yangykaifa/p/7105821.html
swift UI专项训练39 用Swift实现摇一摇功能相关推荐
- Swift UI专项训练7 数据添加
上一话我们使用了自己定义的控制器之后发现tableview上的餐馆没有了,这一话我们来添加数据,新添加一个餐馆类,这个类我们不需要继承系统的类,直接添加一个swift文件就好 import Found ...
- swift UI专项训练5 定制视图控制器
我们现在已经添加了两个场景了,尽管我们有默认的视图控制器,但是我们还是想自己定制一下自己的控制器,我们之前一直在storyboard上做操作,现在来些一些代码. 在工程目录中右键选择new fie,在 ...
- swift UI专项训练4 场景过渡-转场
上一话中我们创建了两个场景,这一话我们想要实现两个场景间的过渡.我们只需要增加一个导航条.选中我们上一话中创建的Table View Controller,点击工具栏上面的editor,选择Embed ...
- swift UI专项训练20 WebView浏览器
WebView就是一个HTML浏览器,用来显示网页,webView的属性如图: Scaling中如果勾选了后面的话,那么打开的网页会根据webView的尺寸来调整尺寸.Phone Numbers会跟踪 ...
- swift UI专项训练15 PcikerView老虎机视图
老虎机相信大家都知道,像一组滚轴,而我们选中其中的某一组值.ios的闹钟选择时间的时候就是这么设计的.在storyboard中拖拽一个pickerview,显示如下: pickerView是没法选择默 ...
- swift UI专项训练21 网页浏览器
网页浏览器不同于上一话的webview,我们的网页浏览器不要求用户输入前面的HTTP,并且能实现自动布局,这一话的内容是前几话的总结.新建一个工程,然后拖拽一个text label,我们来看下右下角的 ...
- Swift UI开发初探
今天凌晨Apple刚刚发布了Swift编程语言,Swift是供iOS和OS X应用编程的新编程语言.相信很多开发者都在学习这门新语言. 废话不多说,下面我就来学习使用Swift创建一个简单的UI应用程 ...
- swift UI 学习 (一)
swift UI 学习 Swift UI 简介 SwiftUI 的特点是什么 1. 声明式语法 2. 拥有更直观的新设计工具 3. 为所有的苹果设备提供原生体验 SwiftUI 代码实例 Swift ...
- 30个Swift UI控件
30个让你眼前一亮的Swift UI控件 No.1 TwicketSegmentedControl 多页面切换滑块控件,能处理滑块的惯性,可以直接将滑块甩到到另一侧. No.2 PagingMenuC ...
最新文章
- SpringMVC解决@ResponseBody返回乱码问题
- 简述JavaME,JavaSE,JavaEE
- Castle ActiveRecord学习实践(1):快速入门指南
- 在maltab中画带参数的函数图像
- mxnet基础到提高(38)-自动梯度计算
- 图论为什么这么难_图论是什么,为什么要关心?
- 前端学习(2914):差值表达式的用法
- 树--树的基本性质(JAVA)
- 计算机基础理论知识的论文,计算机基础毕业论文
- QT中PRO文件写法
- DAY24:信息搜集
- flash人物原地走路_Flash怎么制作一个行走的小人动画?
- 202019 大战360弹窗广告
- 无线通信中多径传播包络服从瑞利衰落衰落MATLAB仿真
- 康涅狄格大学计算机科学排名,2015年US News美国大学计算机专业 Computer Science排名?...
- 个人理解设计为何要多用组合,少用继承
- 【服务器】 Windows Server 2008 R2 配置HTTPS TLS1.2
- 网络与信息安全-第三章-对称秘钥加密算法
- RecycleView实现像ViewPager一次滑一页效果
- FireStart教程:基于SharePoint的出差报销流程二