一个困扰我两天的问题,终于解决了,人类在探索未知领域的时候总是这么步履维艰。一步一步透过层层浓雾,登上山顶,长开有力的臂膀,撕破笼罩在周身的浓雾,一缕阳光照进你的胸膛,豁然间:一种拨开云雾见青天的感觉油然而生。抬望眼,你蓦然瞥见,原来脚下的路不过才是登顶的第一阶而已!

按钮的点击事件,手势事件等,存在最大的不可点击的原因就是 子视图布局在了父视图之外。

我遇到的情况就是这样

首先来看效果图 本来xib创建的时候你的设置是这样的
在这里插入图片描述
实际上展示出来的效果是这样的 在这里插入图片描述
比较两者的不同,会发现 在xib中的设置的背景色 没有显示出来,那么背景色上哪儿去了呢。

经排查,发现是xib中的 autoresizing 属性的问题,导致各个子视图之间的依赖关系变得走样了。就是这个东西

解决办法:

我们把 Autoresizing 属性都设置为 非选中状态,就可以了。

或者,在这个子类中,我们可以设置这样的属性
self.autoresizingMask = UIViewAutoresizingNone;

这样 背景颜色 就会显示出来

这样,子视图就可以正常显示出来,相应的点击事件也能响应了

Xcode 8.2.1 前面学习 iOS 编程时,画UI控件的时候用的都是直接敲代码的方式,基本都是先创建一个相应控件的对象,然后设置对象属性,最后 添加 相应的事件 响应 方法。那强大如Apple这样的公司有没有提供一种更方便、更易学的UI编写方法呢?答案是肯定的。那就是今天本文的主角 XIB 。它是一种可视化的方法,极大地降低了学习 iOS 编程的门槛。 XIB 实践 创建一个名叫 iOS XIB Demo的工程,打开工程info.plist文件,将Main storyboard file base name这个标签去掉,如下图所示 创建一个 iOS 的Cocoa + (instancetype)mineHeaderView return [[NSBundle mainBundle] loadNibNamed:@"DDMineHeaderView" owner:nil options:nil].lastObject; 添加 手势 后, 以上的创建对象方法就不可以通过lastObject来获取了, 因为获... payButton.titleEdgeInsets = UIEdgeInsetsMake((payButton.imageView?.height)! + 20, -(payButton.imageView?.width)!, 0, 0) payButt... 点击控件跳转:// 1: 指定在哪个 Storyboard , 如 Main .            let playSB = UIStoryboard.init(name: "Main", bundle: nil)//2:  在要需要跳转的 Storyboard 页面, identity  中 添加 Storyboard ID, 如:  live , 并强制转换成要跳转页面相应的控制器.    ... 今天在做tableView的头视图自定制,在上面贴了button,frame为头视图的frame,但是 点击事件 没有 响应 。 原因:button的alpha设为0了,这样就不能捕捉到事件了。。。背景色设置为clearColor也没事,就是alpha不能设置为0。 今天做了一个例子遇到了如题的问题,这可能是初学者都容易犯的问题吧。        在一个view上 添加 了一个UIScrollView,然后在UIScrollerView上 添加 了一个UIImageView,希望点击这个imageView有反应,于是在UIImageView上 添加 了UITapGestureRecognizer,但是怎么点都没有反应,仔细查看并不是UITapGestureRecogni 紧接着上一节来写 一,选中On按钮,同时按住Control键,连接到FirstViewController.h文件中。会弹出如下对话框。  二,将Connection处选择为Action,同时将Name处填入 点击事件 名称,此处可不写冒号,Xcode会自动在 点击事件 添加 冒号。如下图所示。 点击事件 为doClickOn.  三,FirstViewController.h中如下:  四,FirstVie... 目录编译器运行后报错问题原因:这种问题仅限于swift调用其他项目的oc xib 其他项目的oc xib 配置如下: 之前封装 xib 都是封装的控制器,今年开始把UIView封装成 Xib ,这样更灵活,但是之前都是封装的Swift的 Xib 给Swift项目用,今天封装了Oc Xib 给Swift项目调用发现了问题.在Storyboard里面不识别oc 的 Xib 编译器运行后报错 [Storyboard] Unknown class _TtC24TDWTZImagePickerViewDemo20TDWTZImagePi 项目适配到 iOS 8,用Swift3.1编写,项目上线后收到的bug反馈都是 iOS 8系统的手机,于是下载了对应版本的模拟器运行,发现8.+系统下控制器 xib 无法识别,其他系统都可以。郁闷了半天,准备纯代码重写,又想到这作业量有点大了,不是几个简单的布局界面,网上查询资料终于找到了一个解决办法: //定义一个闭包用来回传地址 var addressCallBack: ((_ adds:St 今天写 iOS 项目时,发现虽然为按钮 添加 点击事件 ,但是点击后却无法 响应 ,搜索后才解决了问题:按钮的所在的父控件如果不能交互的话,那么这个按钮也无法交互,当然,可以将父控件的userInteractionEnabled属性设置为YES。我这个项目所在的按钮是 添加 在UIImageView上的,所以按钮无法进行交互。解决办法:imageView.userInteractionEnabled=YES; 上午被按钮的一个点击不能触发事件折腾了许久。现已解决,总结并分享出来。希望能对遇到这种情况的人有所帮助。 1、UIButton不能点击情况的第一种是,你将button 添加 到一个不能 响应 点击事件 的View里。如你将button 添加 到UIImageView中,解决办法只需将UIImageView的 userInteractionEnabled设为YES即可。 2、UIButton不能点击