2011-06-13 32 views
1

我尝试下面的代码:如何实现UITableView向下滑动手势?

UISwipeGestureRecognizer *showBar = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(gestureShowBar:)]; 
showBar.direction = UISwipeGestureRecognizerDirectionDown; 
showBar.numberOfTouchesRequired = 2; 
[self.tableview addGestureRecognizer:showBar]; 

没有运气!当我用两根手指进行滑动时,桌面视图往往会滚动。所以,我尝试禁用桌面视图上的多点触摸,并让超级视图处理该手势:

UISwipeGestureRecognizer *showBar = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(gestureShowBar:)]; 
showBar.direction = UISwipeGestureRecognizerDirectionDown; 
showBar.numberOfTouchesRequired = 2; 
[self.view addGestureRecognizer:showBar]; 

再次,它不起作用!我真的不知道为什么桌面视图会响应两个手指轻扫,尽管多点触摸未启用!

+0

捏合手势在UIGestureRecognizer的日子之前,有一种更乏味的方式来实现这一点。继承UITableView并覆盖它的UIResponder方法。我尝试使用swip手势识别器,但似乎即使在实现了UIGestureRecognizerDelegate方法之后,tableView仍然获得更高优先级 - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch。也许我没有打得够久,所以也许试试吧? – Schoob 2011-06-13 14:07:43

+1

面糊u将滑动手势添加到单元格中,但没有整个表格视图,并且还在cellforrowatindexpath中分配了上面的滑动手势方法 – NIKHIL 2011-06-14 11:14:18

回答

0

此链接介绍如何实现在表行U可以调整轻扫手势,而不是它

退房的tableviewcontroller类,其中把手掐法是有 http://developer.apple.com/library/ios/#samplecode/TableViewUpdates/Introduction/Intro.html#//apple_ref/doc/uid/DTS40010139

好运

+0

是的,我已经看到了,但它不一样。如果您尝试向下滑动桌面视图,它会向下滚动并因此阻止任何手势。 – 2011-06-15 08:49:30

+0

你只需要采取自定义单元格,并在自定义类中,您必须应用滑动事件,您需要为整个单元格采取一个视图,并将滑动手势应用于该特定的视图,它肯定会工作 – NIKHIL 2011-06-15 09:00:06