我的代码我的坑(十) —— iOS9 Xib实例化的UITableViewCell中UIButton和UISwitch等控件的IBAction点击无响应的问题(一)

版本记录

版本号 时间
V1.0 2020.03.23 星期一

前言

做了好几个APP,碰到了大大小小的很多坑,以前碰到坑,解决了就结束了,这里想把自己碰到的坑记录下来,一来给自己备查二来希望可以帮助到大家。感兴趣的可以关注下,也欢迎大家补充留言,感兴趣的看上面几篇文章。
1. 我的代码我的坑(一) —— 自签名证书导致请求取消的问题(一)
2. 我的代码我的坑(二) —— UIImageView动画点击后动画和图片消失的问题(一)
3. 我的代码我的坑(三) —— iOS9系统WKWebView加载页面白板的问题(一)
4. 我的代码我的坑(四) —— iOS12系统自定义渐变色UISwitch手机横屏的异常问题(一)
5. 我的代码我的坑(五) —— 不可编辑状态的UITextView文本高度大于视图高度默认滚动到底部的问题(一)
6. 我的代码我的坑(六) —— UITextField输入长度自动截取时汉字和拼音带来的末位截取不能正常输入汉字的问题(一)
7. 我的代码我的坑(七) —— UIImageView做序列帧动画结束后没有回调并且“隐藏”(一)
8. 我的代码我的坑(八) —— iOS 13.1.2 Debug调试模式系统layoutSubviews中修改frame循环调用导致的崩溃(一)
9. 我的代码我的坑(九) —— 系统键盘拼音全键无法正常联想以及输入汉字高亮区识别不计入长度计数的问题(一)

问题描述

使用xib实例化的UITableViewCell,首先创建的是一个空的UIView的xib,然后将其类所属Custom Class修改为UITableViewCell。然后再上面拖进来UIButtonUISwitch等控件,并拖动进去IBAction,这时就会发现当系统是10和10以上时,一切正常。当9系统的时候会发现IBAction会没有反应了。不会调用。


问题解决

其实就是9系统的手机contentView吃掉了IBAction,这是不同系统版本导致的。

一共有两种解决办法:

  • 1) 只需在tableViewCellForRowAtIndexPath方法中添加这一行
cell.contentView.userInteractionEnabled = NO;
  • 2) 创建一个新的UITableViewCell子类,并让Xcode自动为它创建nib。然后复制了所有的UI和代码,从旧nib中复制,并将其粘贴到新nib的ContentView中。然后,必须修复约束并将连接重新连接到自定义子类。

在遇到这个问题时我也很蒙蔽,虽然点很小,但是也是第一次遇见,上网搜了下还真有人遇到过,下面就是那个地址。

后记

本篇主要讲述了iOS9 Xib实例化的UITableViewCell中UIButton和UISwitch等控件的IBAction点击无响应的问题,感兴趣的给个赞或者关注~~~

你可能感兴趣的:(我的代码我的坑(十) —— iOS9 Xib实例化的UITableViewCell中UIButton和UISwitch等控件的IBAction点击无响应的问题(一))