zoukankan      html  css  js  c++  java
  • UITapGestureRecognizer与UITableView同在一个页面导致didSelectRowAtIndexPath方法不响应

    今天测试给我提了一个需求,就是在做用户筛选的时候,点击空白区域,回收筛选列表,我用了手势UITapGestureRecognizer,但是这时就出现了问题,因为列表是动态添加的,所以不能指定空白区域的frame,并且导致了UITableView的didSelectRowAtIndexPath方法不响应,通过百度,我发现原来是UITapGestureRecognizer的didSelectRowAtIndexPath的响应。

    解决方法:

    #pragma mark - UIGestureRecognizerDelegate

    - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch

    {

        

        NSLog(@"gestureRecognizer = %@",NSStringFromClass([touch.view class]));

        if ([NSStringFromClass([touch.view class]) isEqualToString:@"UIView"])

        {

            return NO;

            

        }

        else if ([NSStringFromClass([touch.view class]) isEqualToString:@"InvestDetailSortButton"])

        {

            return NO;

        }

        return YES;

    }

    通过打印,找到能点击的区域的类名,通过类名来区分,这样就可以了。

  • 相关阅读:
    利用Redis和Flask维护一个通用爬虫代理池
    在scrapy_splash中加载本地Cookies
    Splash对接Scrapy
    Selenium和pymongo的简单复习
    Scrapy框架
    web.xml is missing and <failOnMissingWebXml> is set to true
    深入Mybatis配置文件
    SSH和SSM的比较
    classpath路径指什么
    数据库范式
  • 原文地址:https://www.cnblogs.com/huiyi-520/p/8120437.html
Copyright © 2011-2022 走看看