使用iOS的摇一摇功能,只需要让当前Controller本身支持摇动,同时让它成为第一响应者即可。
- (void)viewDidLoad {
[super viewDidLoad];
[[UIApplication sharedApplication] setApplicationSupportsShakeToEdit:YES];
[self becomeFirstResponder];
}
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self resignFirstResponder];
}
#pragma mark - 摇动手机之后的回调方法
- (void) motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event {
//检测到摇动开始
if (motion == UIEventSubtypeMotionShake)
{
// your code
NSLog(@"检测到摇动开始");
}
}
- (void) motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent *)event {
//摇动取消
NSLog(@"摇动取消");
}
- (void) motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {
//摇动结束
if (event.subtype == UIEventSubtypeMotionShake)
{
// your code
NSLog(@"摇动结束");
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);//振动效果 需要#import <AudioToolbox/AudioToolbox.h>
}
}
转载:摇一摇功能的实现