如何检测摇一摇手势

如何检测摇一摇手势,第1张

概述作者:Arthur Knopper,原文链接,原文日期:2017-04-18 译者:Crystal Sun;校对:way;定稿:shanks iOS 设备可以检测摇一摇手势,在本节教程中,我们将学习如何检测摇一摇手势,检测到该手势后,更新 label 的文案。本节教程使用的是 Xcode 8.3 和 iOS 10.3。 设置工程 打开 Xcode,创建一个 Single View Applicat

作者:Arthur Knopper,原文链接,原文日期:2017-04-18
译者:Crystal Sun;校对:way;定稿:shanks

iOS 设备可以检测摇一摇手势,在本节教程中,我们将学习如何检测摇一摇手势,检测到该手势后,更新 label 的文案。本节教程使用的是 Xcode 8.3 和 iOS 10.3。

设置工程

打开 Xcode,创建一个 Single VIEw Application。

Product name 使用 IOS10ShakeGestureTutorial,填写自己的 Organization name 和 Organization IDentifIEr,Language 一栏选择 Swift,Devices 一栏选择 iPhone。

打开 Storyboard,从 Object library 中拖拽一个 Label 控件放到 VIEw Controller 上,双击 Label 控件将文案修改为 “Shake me”。选中该 Label,点击 auto Layout 的 Align 按钮。选中 “Horizontally in Container”,点击 “Add 1 Constraint”。

选中 Label,点击 auto Layout 的 Pin 按钮,选中上边距约束线,点击 “Add 1 Constraint”。

Storyboard 看起来应如下图所示。

打开 Assistant Editor,确保 VIEwController.swift 可见。按住 Control 键,将 Label 拖拽到 VIEwController 类下,创建下图的 Outlet。

打开 VIEwController.swift 文件,首先要让 VIEw Controller 回应点击事件,可以通过 VIEwController FirstResponder 实现,添加下列方法:

overrIDe func becomeFirstResponder() -> Bool {    return true}

接下来,要想检测摇一摇手势,添加 motionEnded(_:with:) 方法。

overrIDe func motionEnded(_ motion: UIEventSubtype,with event: UIEvent?) {    if motion == .motionShake {        shakeLabel.text = "Shaken,not stirred"    }}

如果确实是一个 Shake Gesture(摇一摇),那么 Label 的文案就会更新。运行工程,摇一摇测试机。可以点击 iOS 模拟器菜单栏 HarDWare 选项下的 Shake Gesture 来摇一摇。

可以从 github 上下载 IOS10ShakeGestureTutorial 教程的源代码。

本文由 SwiftGG 翻译组翻译,已经获得作者翻译授权,最新文章请访问 http://swift.gg。

总结

以上是内存溢出为你收集整理的如何检测摇一摇手势全部内容,希望文章能够帮你解决如何检测摇一摇手势所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1060324.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存