[UIKBBlurredKeyView candidateList]: unrecognized selector sent to instance

来源:互联网 发布:网络贵金属 编辑:程序博客网 时间:2024/06/05 19:27

错误

app 在线上有个崩溃的问题, crash原因为-[UIKBBlurredKeyView candidateList]: unrecognized selector sent to instance. 

原因

然后发现是在手写输入的时候会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
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

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

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

2.在UITableView上改变键盘

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