最近公司来了个新UI,可能技术不是很娴熟,苦了我们这帮苦逼程序猿... 今天讲讲项目中UI不给力,你该如何实现本功能;
屏幕快照 2017-02-28 19.35.07.png
首先看到这种界面的你们肯定是按钮放在下面黄色UIImageView上上面,但是注意 UI切图肯定是就给你切黄色部分的 其他部分是镂空的。你创建UIImageView的时候肯定是和图片一样大的,这样按钮的frame就不在你UIImageView上了,这样当你点击按钮的时候,是没有事件的,不知道有多少苦逼似我的遇到过这样的设计.....
好了,既然人都设计了,那就想想怎么出实现吧... 首先UIButton是放在UIImageView上的,UIImageView默认是不带交互的 必须先把他的userInteractionEnabled 设置为YES; 当你点击按钮的时候 事件传递下去找不到你的imageview了,这怎么办??????
我在网上找了几篇资料但是效果都不对,不知道为何他们就可以,不过遇到这种状况的话两个解决办法:
1,让你们UI切个上面镂空的图 这样你的UIButton 还在UIImageView上就能响应事件了。
2,笨方法 下面放一个view 设置透明 这样不就实现了?
3,就是重写 view的系统方法hittest 方法,网上很多这个🌰,但是每一个是对的................. 很无语,不知道不对为什么那么多人重复的发表,这不耽误我这苦逼的时间嘛!!!! 所以在这建议写Blog的程序猿们,对的就拿出来不对可千万别放出来坑人 (说的多了...咳咳...)
好吧 其实这个方法我之前做弹幕点击事件的时候写过,但是呢由于时间问题,就简单说下吧,谁遇到了知道怎么解决就行... 代码后期更新上去,今天就唠叨到这吧....
网友评论