UIAccelerometer废弃之后的 摇一摇功能
2016-05-25 09:47
357 查看
iOS7中,原来在项目中,使用的筛子振动的类是UIAccelerometer。运行iOS7后,会报一个警告。
意思大概是说UIAccelerometer在iOS5.0之后就被CoreMotion framework框架给取代了。
我是这样解决的:用CoreMotion framework框架来替代,
1,导入
#import <CoreMotion/CoreMotion.h>
2,并声明为全局变量(或者属性),
CMMotionManager *_manager;
3,然后在初始化的时候生成,并设置更新频率,启动更新
_manager = [[CMMotionManager alloc]init];
_manager.accelerometerUpdateInterval=1.0/60.0;
[_managerstartAccelerometerUpdates];
4,启动一个定时器,时刻检测振动状态
[NSTimer scheduledTimerWithTimeInterval:1.0/60.0target:selfselector:@selector(shackAction) userInfo:nilrepeats:YES];
5,在定时器方法里,时刻判断加速计的x,y,z的便宜,超过一定程度即为筛子振动。
if (fabsf(_manager.accelerometerData.acceleration.x) > 2.0 || fabsf(_manager.accelerometerData.acceleration.y) > 2.0 ||fabsf(_manager.accelerometerData.acceleration.z) > 2.0)
6,这样即可解决。
意思大概是说UIAccelerometer在iOS5.0之后就被CoreMotion framework框架给取代了。
我是这样解决的:用CoreMotion framework框架来替代,
1,导入
#import <CoreMotion/CoreMotion.h>
2,并声明为全局变量(或者属性),
CMMotionManager *_manager;
3,然后在初始化的时候生成,并设置更新频率,启动更新
_manager = [[CMMotionManager alloc]init];
_manager.accelerometerUpdateInterval=1.0/60.0;
[_managerstartAccelerometerUpdates];
4,启动一个定时器,时刻检测振动状态
[NSTimer scheduledTimerWithTimeInterval:1.0/60.0target:selfselector:@selector(shackAction) userInfo:nilrepeats:YES];
5,在定时器方法里,时刻判断加速计的x,y,z的便宜,超过一定程度即为筛子振动。
if (fabsf(_manager.accelerometerData.acceleration.x) > 2.0 || fabsf(_manager.accelerometerData.acceleration.y) > 2.0 ||fabsf(_manager.accelerometerData.acceleration.z) > 2.0)
6,这样即可解决。
相关文章推荐
- UITableView刷新小技巧
- vue.js+boostrap
- iOS UIScrollView 你可能不知道的奇技淫巧
- 详解iOS App中UIPickerView滚动选择栏的添加方法
- leetcode之Unique Binary Search Trees
- Installation failed due to invalid APK file!问题
- grub rescue 模式下修复 ubuntu
- LeetCode 187. Repeated DNA Sequences(重复DNA序列)
- easyUI tabs切换
- POJ 1458 Common Subsequence (DP+LCS,最长公共子序列)
- List items = upload.parseRequest(request); 获取不到值
- UITableView性能优化的其它两种方式
- 使用ThreadPool.QueueUserWorkItem记录网站错误日志
- Vue.js报错Failed to resolve filter问题原因
- SAPUI5
- 模块(序列化(json&pickle)+XML+requests)
- 产生一个固定大小、禁止最大化、最小化的qquickview窗口
- 产生一个固定大小、禁止最大化、最小化的qquickview窗口
- SAPUI5 - Component
- [JavaWeb]关于DBUtils中QueryRunner的一些解读.