码迷,mamicode.com
首页 > 其他好文 > 详细

UITextField禁用掉编辑之后...

时间:2014-09-18 11:09:53      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:io   os   ar   for   数据   art   cti   on   c   

  1. 某些UITextField只为了摆数据,还有响应点击,为了避免频繁出现键盘,所以把UITextField的人机交互(userInteractionEnabled)给关闭了
  2. 此时,给UITextField注册Tap手势,失败
  3. 查资料,没有交互功能的textfield是不能注册手势的,只能注册给其父view,成功
  4. 本例中其父view就是当前窗体,于是发现这个窗体里的按钮都不响应点击事件了(虽然点击的时候能高亮)
  5. 得知可以用手势的代理方法:
    - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
        return ([[touch.view class] isSubclassOfClass:[UIButton class]]) ? NO : YES;
    }

这个方法不靠谱,我点击的是UIToolbar里的UIBarButtonItem,打印出来的却是UIToolbarTextButton,这个类我没找到,结果只能用字符串匹配了。

if ([[NSString stringWithFormat:@”%@”,[touch.view class]] isEqualToString:@”UIToolbarTextButton”]) {
        return NO;
    }

巨大的坑啊

UITextField禁用掉编辑之后...

标签:io   os   ar   for   数据   art   cti   on   c   

原文地址:http://www.cnblogs.com/walkerwang/p/3978640.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!