在做app软件中摇一摇的功能时,本来以为很神秘的摇一摇,却在代码文档中找到了封装好的相关方法,下面让我们一起揭开摇一摇的神秘面纱。
在 UIResponder中存在下面三个方法
- (void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent*)event__OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent*)event__OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
- (void)motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent*)event__OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
这就是执行摇一摇的方法。
在实现该功能时,
你只需要让这个Controller本身支持摇动(真机测试即可实现),同时让他成为第一相应者:
- (void)viewDidLoad
{
[superviewDidLoad];
// Do any additional setup after loading the view, typically from anib.
[[UIApplication sharedAppli cation]setApplicationSupportsSh akeToEdit:YES];
[self becomeFirstResponder ];
}
然后去实现那几个方法就可以了
- (void) motionBegan:(UIEventSubtype)motion withEvent:(UIEvent*)event
{
//检测到摇动
}
- (void) motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent*)event
{
//摇动取消
}
- (void) motionEnded:(UIEventSubtype)motion withEvent:(UIEvent*)event
{
//摇动结束
if(event.subtype == UIEventSubtypeMotionShak e) {
//实现对应的操作
}
}