iOS之摇一摇

来源:互联网 发布:淘宝处理无3c认证 编辑:程序博客网 时间:2024/06/08 09:20

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];

 [[UIApplication sharedApplication]setApplicationSupportsShakeToEdit:YES];

[self becomeFirstResponder];

}

然后去实现那几个方法就可以了

- (void) motionBegan:(UIEventSubtype)motionwithEvent:(UIEvent

*)event

{

    //检测到摇动

}

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

{

    //摇动取消

}

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

{

    //摇动结束

    if(event.subtype == UIEventSubtypeMotionShake) {

        //somethinghappens

    }

}