(iPhone/iPad开发)在iOS设备上实现摇晃手机体验的相关功能

news/2023/11/30 3:59:27

刚在做一个在iOS设备上实现摇晃进而触发一些体验的功能,现在网上大概搜了一下,然后看了一下开发文档,一个感触是,网上劣质文章太多了,盲目转载拷贝的文章也很多,重样而且还都没有讲清实现原理,与其去网上费时搜,还不如看一下开发文档,很快就可以解决需要解决的问题。

官方开发文档:http://developer.apple.com/library/ios/#documentation/EventHandling/Conceptual/EventHandlingiPhoneOS/motion_event_basics/motion_event_basics.html#//apple_ref/doc/uid/TP40009541-CH6-SW2


具体实现方法:

iOS的SDK中已经将shake 事件很方便的融合进去,就像触发touch事件一样,需要注意的是,先给当前ViewController设置为第一响应者,然后当app发生shake事件后程序会自动执行

-(void)motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent *)event

-(void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event

-(void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event

只需要在相应的触发事件中写需求相应的功能。


具体代码:

设置第一响应者:

-(BOOL)canBecomeFirstResponder{return YES;
}-(void)viewDidAppear:(BOOL)animated{[self canBecomeFirstResponder];
}

处理相应触发事件:

#pragma mark -
#pragma mark - MotionShake Event
-(void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event{}-(void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event{if(motion == UIEventSubtypeMotionShake){NSLog(@"Shake!!!!!!!!!!!");}
}-(void)motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent *)event{}



http://www.ppmy.cn/news/512303.html

相关文章

HarmonyOS学习路之开发篇—多媒体开发(音频开发 一)

HarmonyOS音频模块支持音频业务的开发,提供音频相关的功能,主要包括音频播放、音频采集、音量管理和短音播放等。 基本概念 采样 采样是指将连续时域上的模拟信号按照一定的时间间隔采样,获取到离散时域上离散信号的过程。 采样率 采样率为每…

termux使用教程python手机_渗透测试|利用手机攻击电脑(Termux终端初体验)

至少我们曾经在一起过。 来自:一言 介绍 Termux是一个Android下一个高级的终端模拟器,开源且不需要root,支持apt管理软件包,十分方便安装软件包,完美支持Python,PHP,Ruby,Go,Nodejs,MySQL等。随着智能设备的普及和性能的不断提升,如今的手机、平板等的硬件标准已达到了初…

手机用户体验测试点

手机用户体验测试点,路过的朋友如有更好的想法,欢迎补充! 1 . 硬件 1)外观设计 -用户拿在手里是否舒服?手机拿在手里的舒适度 -手机外观颜色是否在用户可接受的范围之内? -手机使用的材质是否耐脏&#xf…

用户体验测试

在平时测试过程中,除了保证产品功能上的完整性,还会考虑产品的易用性,即用户体验测试。 一、什么是用户体验测试 顾名思义,用户体验测试是测试在产品发布前处于用户角度进行的一系列体验使用,比如界面是否友好、操作…

理解用户体验

根据ISO 9241-210标准中的定义,用户体验(User Experience,UE/UX)是人们对于针对使用或期望使用的产品、系统或者服务的认知印象和回应,即用户在使用一个产品或系统之前、使用期间和使用之后的全部感受,包括…

手机测试的主要测试内容

手机测试主要测试什么? 1. 软件压力测试 用自动测试软件连续给手机拨打1000个电话,检查手机是否会发生故障。 2. 抗摔性测试 抗摔性测试由专门的PRT可*性实验来进行。半米的微跌落测试要做300/面(手机有6个面)。而2米的跌落测…

HarmonyOS学习路之开发篇—多媒体开发(音频开发 二)

一、音频音频采集开发 场景介绍 音频采集的主要工作是通过输入设备将声音采集并转码为音频数据,同时对采集任务进行管理。 接口说明 接口名 描述 AudioCapturer(AudioCapturerInfo audioCapturerInfo) throws IllegalArgumentException 构造函数,设…

如何解决微信与此ipad不兼容

如何解决微信与此ipad不兼容 如何解决微信与此ipad mini不兼容 尝试过很多方法,用pp助手和爱思助手安装以前版本 都不行,显示版本过低,需要升级, 但一升级,显示不兼容。 折磨了十分钟后, 最后这个方法搞定…

windows 微信手机端退出登录,pc电脑端不退出的奇淫技巧

手机断网(飞行模式),微信里点 我-设置-退出登录。然后等不到一分钟 手机端的页面就会跳转 此时打开网落再登录别的微信就OK了

自己退出微信小程序开发者权限

被动退出: 管理者直接在微信小程序的管理平台直接把你踢出去,但是你得联系到你的管理员。 主动退出: 在手机上关注公众平台安全助手 > 绑定查询 > 点击要退出的账号 > 解除绑定 https://developers.weixin.qq.com/community/develo…

socket通讯有时收不到消息的可能原因

问题描述:最近弄智能头盔项目,当app即时通讯调试可以后上架了,用户安装后,后台推送消息给该用户,却发现该用户收不到消息,即意味着用户手机不会震动、铃声等提醒问题 后台日志发现错误如下图 思考&#x…

vbs自动发送微信消息

桌面创建自带文本,复制以下代码 On Error Resume Next Dim xda,ye set xdacreateobject("wscript.shell") for i 1 to 10 wscript.sleep 520 xda.AppActivate xda.sendKeys "^v" xda.sendKeys "%s" next wscript.quit将.txt后缀改为.vbs QQ 或…

wifi微信连不到服务器,微信连不上wifi怎么办?

原创微信连不上wifi怎么办? 编辑:小葫芦 来源:PC下载网资讯 原创 时间:2018-03-23 02:43:04 大家经常会在家中使用微信进行聊天,那么如果微信连不上wifi了怎么办? 方法步骤: 1.微信是大家最常用的聊天工具之一了,几乎每…

苹果更新系统微信收不到服务器,苹果手机升级iOS12后微信无法提示新消息的解决办法 亲测有效...

苹果手机升级iOS 12后微信不再提示新消息怎么办?10秒解决!!北京时间6月5日凌晨,苹果通过WWDC18大会正式发布了全新一代的iOS12操作系统,有关iOS12带来哪些新功能不妨去本站了解一下相关文件。我们已经知道了&#xff0…

企业微信手机端可以退出吗?会影响电脑端企业微信吗?

现在很多企业选择企业微信作为移动办公软件,企业微信打破了传统办公软件的地域限制,可以在手机端和电脑端进行登录,随时可以进行工作事宜。 前言 现在很多企业选择企业微信作为移动办公软件,企业微信打破了传统办公软件的地域限制…

Vue公众号退出微信浏览器

前言 开发了一个项目,需要放到公众号中,在路由跳转之后,此时我们单击手机上的返回键(部分手机是左右滑),我们希望退出微信浏览器,这个时候应该如何操作呢? 过程 1.安装微信的SDK n…

android微信打不开怎么办,微信打不开怎么回事

微信打不开怎么回事?有的时候,我们想要用手机微信,会忽然发现微信打不开了,这是什么原因造成的?又要怎么去解决呢?今天系统圣地小编就给大家带来了微信打不开怎么办的相关教程,希望能对大家有所帮助。 微信打不开的解决方法 首…

微信收到消息很慢无法连接服务器,微信消息总是延迟接收怎么办?

有时候 iPhone 提示我们有微信消息,但是打开之后发现是几十分钟之前的,这导致我们没有及时回复他人的消息,如果是工作上的重要信息就比较麻烦了。为什么会出现微信消息延迟的问题?这个情况跟网络、软件与设备的兼容性、以及软件与…

苹果手机收不到推送信息_苹果手机微信收不到信息怎么回事(超详细解决方案分享)...

微信APP是手机用户每天都要使用的一款社交软件,你是否曾因为微信消息推送延迟或不提醒而错过一些重要内容呢?如果你目前使用的是苹果手机,可以看一下小编整理的关于iPhone微信消息不提醒的解决建议哦。 1. 设置 首先我们需要在苹果手机上确认相关的开关是否设置正确。在iPho…

华为手机玩王者荣耀的时候微信消息通知不弹窗提示,打王者的时候微信不弹窗提示消息,(P30)【解决办法】

这里写目录标题 引子一、手机系统二、设置 -- 应用三、应用助手四、开启应用助手五、退出设置 -- 打开王者荣耀 -- 在最上方手指下滑六、把圈起来的这个月亮的图标点一下 -- 点成下方这个样子七、测试一下 引子 本人手机P30,已经升级为鸿蒙系统(HarmonyOS2.0) 好久…
最新文章