情況:底部為UIScrollView蠕啄,上面兩個(gè)controllerView, 每個(gè)controller里面都是tabelview摔笤,現(xiàn)在要在右邊controller的TableView的Cell上添加左滑刪除功能,但是添加手勢(shì)之后發(fā)現(xiàn)被底部的UISrollView識(shí)別了柒爸,而Cell的手勢(shì)偶爾被識(shí)別。
解決辦法:新建一個(gè)自己的scrollView繼承UIScrollView汽纤,重寫手勢(shì)代理方法
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
if (gestureRecognizer.state != 0) {
return YES;
} else {
return NO;
}
}
意思就是:如果這個(gè)手勢(shì)沒有被識(shí)別瑞筐,那么就多個(gè)gestureRecognizer可以同步識(shí)別;
然后把scroller 的左右邊緣滑動(dòng)給禁止就可以了
-(void)scrollViewDidScroll:(UIScrollView*)scrollView
{
? ? if(scrollView.contentOffset.x>SCREEN_WIDTH|| scrollView.contentOffset.x<0) {
? ? ? ? scrollView.scrollEnabled=NO;
? ? }else{
? ? ? ? scrollView.scrollEnabled=YES;
? ? }
}