您的位置:首页 > 编程语言 > C语言/C++

OC语言中关于触摸事件和手势

2016-07-12 00:00 501 查看
摘要: 触摸,事件和手势的大致细节,和一些常用的方法(新手路过,请多多指教)

触摸事件和手势

通过触摸获得光标所在的位置;

//开始触摸

-( void)touchesBegan: (NSSet<UITouch *> *)touches withEvent:( UIEvent *) event

{
UITouch *touch = touches.allObjects.firstObject;

CGPoint point = [ touch locationInView :self.view( 从哪个界面获取)];

}

//结束触摸

-( void)touchesEnded : ( NSSet<UITouch *> *)touches withEvent : ( UIEvent *)event

{
结束触摸的时候,进入的方法;

}

//无序的集合,在使用allObjects这个方法时,返回值就是一个NSArray的数组类型;NSSet还可以使用增强for循环来遍历。

//在触摸的事件中,还可以通过event来获取到touches.

手势

1.在给界面添加手势的时候,需要保证界面的交互式打开的:[ _view setUserInteractionEnable : YES];

2.在添加手势的时候,需要给手势添加到界面上去;[ _view addGestureRecognizer : longPress];

3.实例化手势的时候,需要有相应的回调方法;

手势分为:

UITapGestureRecognizer ( 敲击)

属性,numberOfTapsRequired 用来设置敲击的次数,触发事件

UIPinchGestureRecognizer ( 捏合,用于缩放)

属性,sender.scale用来控制缩放的比例

UIPanGestureRecognizer ( 拖拽)

UISwipeGestureRecognizer ( 清扫)

UIRotationGestureRecognizer ( 旋转)

属性,sender.rotation用来控制旋转的弧度变化

UILongPressGestureRecognizer ( 长按)

属性,sender.state用来控制手势开始【UIGestureRecognizerStateBegan】和手势结束【UIGestureRecognizerStateEnded】所需要执行的方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: