Cra*_*Dev 1 xcode rotation swipe ios
我应该在子视图中实现滑动手势; 这个子视图是一个斜视图
view1.transform = CGAffineTransformMakeRotation( ( 54 * -M_PI ) / 180 );
Run Code Online (Sandbox Code Playgroud)
我希望在这个视图中实现滑动手势,如果它发生我应该有一个NSLog,说滑动发生在这个视图中,是否可能?
小智 5
就像任何其他UIView一样,可以添加手势识别器:
UISwipeGestureRecognizer *swipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwipe:)];
[view1 addGestureRecognizer:swipeGestureRecognizer];
Run Code Online (Sandbox Code Playgroud)
问题在于UISwipeGestureRecognizer的属性"方向".有关此属性的Apple文档:
此手势识别器的滑动允许方向.
由于视图旋转,因此方向会旋转.如果视图旋转180度并且用户向右滑动,则手势识别器将其视为向左滑动.我建议使用一个应该放置手势识别器的包装器视图.试试这个:
UIView *view2 = [[UIView alloc] initWithFrame:view1.frame];
[view1.superview addSubview:view2];
view2.backgroundColor = [UIColor clearColor];
UISwipeGestureRecognizer *swipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwipe:)];
[view2 addGestureRecognizer:swipeGestureRecognizer];
Run Code Online (Sandbox Code Playgroud)
缺点是view2中有某些区域,但view1外部会响应手势识别器.
| 归档时间: |
|
| 查看次数: |
5435 次 |
| 最近记录: |