UIGestureRecognizer手势识别小结

来源:互联网 发布:php二维数组 编辑:程序博客网 时间:2024/04/30 13:57

UIGestureRecognizer

为了完成手势识别,必须借助于手势识别器----UIGestureRecognizer


利用UIGestureRecognizer,能轻松识别用户在某个view上面做的一些常见手势


UIGestureRecognizer是一个抽象类,定义了所有手势的基本行为,使用它的子类才能处理具体的手势

UITapGestureRecognizer(敲击)

UIPinchGestureRecognizer(捏合,用于缩放)

UIPanGestureRecognizer(拖拽)

UISwipeGestureRecognizer(轻扫)

UIRotationGestureRecognizer(旋转)

UILongPressGestureRecognizer(长按)

每一个手势识别器的用法都差不多,比如UITapGestureRecognizer的使用步骤如下

创建手势识别器对象

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] init];

设置手势识别器对象的具体属性

// 连续敲击2次tap.numberOfTapsRequired = 2;// 需要2根手指一起敲击tap.numberOfTouchesRequired = 2;


//添加手势识别器到对应的view上[self.iconView addGestureRecognizer:tap];//监听手势的触发[tap addTarget:self action:@selector(tapIconView:)];

//手势识别状态typedef NS_ENUM(NSInteger, UIGestureRecognizerState) {    // 没有触摸事件发生,所有手势识别的默认状态    UIGestureRecognizerStatePossible,    // 一个手势已经开始但尚未改变或者完成时(常用)    UIGestureRecognizerStateBegan,    // 手势状态改变(常用)    UIGestureRecognizerStateChanged,    // 手势完成(常用)    UIGestureRecognizerStateEnded,    // 手势取消,恢复至Possible状态    UIGestureRecognizerStateCancelled,    // 手势失败,恢复至Possible状态    UIGestureRecognizerStateFailed,    // 识别到手势识别    UIGestureRecognizerStateRecognized = UIGestureRecognizerStateEnded};







0 0
原创粉丝点击