摇一摇 实现方式

ios本身就支持
在 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 a nib.
 
    [[UIApplicationsharedApplication] setApplicationSupportsShakeToEdit:YES];
 
    [selfbecomeFirstResponder];
 
}
 
  
 
然后去实现那几个方法就可以了
 
- (void) motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event
 
{
 
    //检测到摇动
 
}
 
  
 
- (void) motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent *)event
 
{
 
    //摇动取消
 
}
 
  
 
- (void) motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event
 
{
 
    //摇动结束
 
    if (event.subtype == UIEventSubtypeMotionShake) {
 
        //something happens
 
    }
 
}

你可能感兴趣的:(摇一摇 实现方式)