最近需要在UIWebView里实现左右划动翻页的功能,发现用UITouch事件没效果,在官方文档里找了个用UIGestureRecognizer实现的方法:
UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipe:)]; [webView addGestureRecognizer:swipeRight]; [swipeRight release]; UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipe:)]; swipeLeft.direction = UISwipeGestureRecognizerDirectionLeft; [webView addGestureRecognizer:swipeLeft]; [swipeLeft release];
---------------------华丽的分割-------------------
-(void)swipe:(UISwipeGestureRecognizer *)g{ if (g.direction == UISwipeGestureRecognizerDirectionRight) { [self prevPage]; } else { [self nextPage]; } }
UISwipeGestureRecognizer 是UIGestureRecognizer的子类,还有以下几个:
UITapGestureRecognizer UIPinchGestureRecognizer UIRotationGestureRecognizer UISwipeGestureRecognizer UIPanGestureRecognizer UILongPressGestureRecognizer
更详细的内容可以查看手册
本文出自 “idanal” 博客,请务必保留此出处http://danal.blog.51cto.com/3353275/632593