touchesBegan: withEvent: 不执行/完美收起键盘

touchesBegan: withEvent: 不执行/完美收起键盘eg:写一个category类目 UIScrollView+Event-(void)touchesBegan:(NSSetUITouch*>*)toucheswithEvent:(UIEvent*)event{  [supertouchesBegan:toucheswithEvent:event];  [[[selfnext

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

eg:写一个category类目  UIScrollView + Event

– (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event

{

    [super touchesBegan:touches withEvent:event];

    [[[self nextResponder] nextResponder] touchesBegan:touches withEvent:event];

}

应用场景:

操作:点击ScrollView上的textFiledView -> 再点击ScrollView上的button

希望能够收起键盘(项目中有无数个这样的操作)

材料:BaseViewController(这是所有ViewController的基类)

1.在BaseViewController写入

-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{

    //分别取消第一响应者

    [[[UIApplication sharedApplication] keyWindow] endEditing:YES];

}

注:点击添加在self.view上的控件已经可以响应了,但是ScrollView上的控件不会响应。

2.写一个category类目  UIScrollView + Event.h

– (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event

{

    [super touchesBegan:touches withEvent:event];

    [[[self nextResponder] nextResponder] touchesBegan:touches withEvent:event];

}

注:点击ScrollView上的textFiledView已经可以响应了,但是ScrollView上的button还是不能响应

3.
写一个category类目  UIButton + Event.h

– (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event

{

    [super touchesBegan:touches withEvent:event];

    [[[self nextRespondernextRespondertouchesBegan:touches withEvent:event];

}

到此完美解决。


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/164162.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • WiFi曝Krack重大漏洞,6大措施应对威胁!

    WiFi曝Krack重大漏洞,6大措施应对威胁!为什么80%的码农都做不了架构师?>>>…

    2022年5月1日
    47
  • stat函数的用法_Str函数

    stat函数的用法_Str函数stat和lstat是兄弟函数,都是用于获取文件信息如果文件不是链接文件,则二者没有区别,如果是链接文件有如下区别:stat:获取链接文件的信息时,具有穿透能力,直接穿越链接文件,获取所被链接文件的信息。lstat:获取链接文件的信息,无穿透能力函数原型intstat(constchar*pathname,structstat*buf);intlstat(constcha…

    2022年8月21日
    6
  • sso单点登录系统实现原理(oauth2 单点登录原理)

    单点登录SSO(SingleSignOn)说得简单点就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任。单点登录在大型网站里使用得非常频繁,例如像阿里巴巴这样的网站,在网站的背后是成百上千的子系统,用户一次操作或交易可能涉及到几十个子系统的协作,如果每个子系统都需要用户认证,不仅用户会疯掉,各子系统也会为这种重复认证授权的逻辑搞疯掉。实现单点登录说到底就是要解决如何产生和存储那个信任,再就是其他系统如何验证这个信任的有效性,因

    2022年4月14日
    177
  • 二叉树的先序遍历和中序遍历_二叉树后序遍历怎么看

    二叉树的先序遍历和中序遍历_二叉树后序遍历怎么看二叉树的遍历详解AProgrammer微信公众号:AProgrammer​关注他概述二叉树的遍历是一个很常见的问题。二叉树的遍历方式主要有:先序遍历、中序遍历、后序遍历、层次遍历。先序、中序、后序其实指的是父节点被访问的次序。若在遍历过程中,父节点先于它的子节点被访问,就是先序遍历;父节点被访问的次序位于左右孩子节点之间,就是中序遍历;访问完左右孩子节点之后再访问父节点,就是后序遍历。不论是先序遍…

    2025年11月14日
    3
  • mysql 取消外键约束_主键约束和外键约束什么意思

    mysql 取消外键约束_主键约束和外键约束什么意思**Mysql中取消外键约束**Mysql中如果表和表之间建立的外键约束,则无法删除表及修改表结构。解决方法是在Mysql中取消外键约束:SETFOREIGN_KEY_CHECKS=0;然后将原来表的数据导出到sql语句,重新创建此表后,再把数据使用sql导入,然后再设置外键约束:SETFOREIGN_KEY_CHECKS=1;…

    2022年10月21日
    3
  • 深入理解JVM内存分配策略

    深入理解JVM内存分配策略理解JVM内存分配策略三大原则+担保机制JVM分配内存机制有三大原则和担保机制具体如下所示:优先分配到eden区 大对象,直接进入到老年代 长期存活的对象分配到老年代 空间分配担保对象优先在Eden上分配如何验证对象优先在Eden上分配呢,我们进行如下实验。打印内存分配信息首先代码如下所示:publicclassA{publicst…

    2022年5月14日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号