首先用一张图解释一下这个标题:
这个“有意向”和蓝色的底部背景,是需要跟着图片一起呈现圆形的状态。这个时候有的人就说了 这个很简单啊,直接写一个带背景颜色的UILabel加在UIImageView上,设置一下UIImageView的 clipsToBounds = YES 就完事了。是的这样是可以的,但是如果这个控件在项目中用的地方比较多。或者想在起其他的项目中使用。每次都写这个Label就比较麻烦了。(至少我是这是这样想的)
我就遇到这个UI的问题了, 我不想总是写这个label,而且有的是需要显示有的是不需要显示这个标识。那么就写一个把它们放在一起的控件吧。于是就诞生了我写的这个GZMarkImageView,仅做参考,不喜勿喷,大神可绕道。
GZMarkImageView 继承UIImageView,在ImageView中添加UIlabel,然后设置self.clipsToBounds = YES. self.layer.masksToBounds =YES;
为了让标识部分UI更灵活些我加了一个backView,然后再backView上添加的label。可修改label的属性,View的属性。布局是基于frame写的比较方便。暴露了显示和隐藏标识的方法。喜欢的小伙伴可以下载看一下哈。https://github.com/WarmLGZ/MarkImageView