• reason: -[UIKBBlurredKeyView candidateList]: unrecognized selector sent to instance


    reason: -[UIKBBlurredKeyView candidateList]: unrecognized selector sent to instance

    发现上线的app一直会有这个crash信息,直到最近才去重视这个问题,发现是在手写输入的时候会crash,原因是因为我在UIScrollview的category中重写了三个方法如下:

     -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
        [[self nextResponder] touchesBegan:touches withEvent:event];
        [super touchesBegan:touches withEvent:event];
    }
    
     -(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
        [[self nextResponder] touchesMoved:touches withEvent:event];
        [super touchesMoved:touches withEvent:event];
    }
    
     -(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
        [[self nextResponder] touchesEnded:touches withEvent:event];
        [super touchesEnded:touches withEvent:event];
    }

    按照自己的和网上的方法进行整理一下:

    1.在UIScrollView上面加一个UIView,通过在view上面的手势来改变键盘

    UITapGestureRecognizer *tapGr = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyboard:)];
    tapGr.cancelsTouchesInView = NO;
    [backView addGestureRecognizer:tapGr];

    2.在UITableView上改变键盘

    UITapGestureRecognizer *tapGr = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyboard:)];
    //记得加这句,不然会屏蔽到TableView的点击事件等
    tapGr.cancelsTouchesInView = NO;
    [tableView addGestureRecognizer:tapGr];


  • 相关阅读:
    Map的迭代操作
    Vector/Arraylist与Linklist的区别
    Notepad++ 快捷键 大全
    集成 Tomcat 插件到 Eclipse 的过程
    十个最好的Java性能故障排除工具
    eclipse删除空行
    java解析xml文件四种方式
    Java解析XML文档(简单实例)——dom解析xml
    Log4j 2.0 使用说明
    根据引用jar包路径查找原JAR包
  • 原文地址:https://www.cnblogs.com/developer-qin/p/5642637.html
Copyright © 2020-2023  润新知