iOS Label切圆角边上有黑线解决方案
2018-08-10 本文已影响50人
Leeson1989
昨天在给label切圆角时发现无论怎么调整,在边上都会有一条黑线。
于是乎翻看了一些帖子,试了很多方法,最多的方案是ULabel设置可变宽度时,有小数。只需将宽度转成整型数据即可。但是这样做的话就改变了本来的宽度,UI不会同意,自己心里也有点小疙瘩。最后我还是弃用了上面的方案。那么接下来就是要自己想办法了。
一般情况下对label切圆角,label一定会有自己的背景色,于是我尝试了一下,设置layer的borderWidth为2(因为黑线的宽度小于1,设置2可以完全覆盖掉黑线).然后设置borderColor为label的背景色,发现问题完美解决了。
因为在项目开发中,经常要用到给控件切圆角,下面给大家分享下宏定义来设置view的圆角和边框,以后要切圆角直接调用宏就可以了。想要了解更多常用的宏定义可以看我的另外一篇帖子iOS常用的宏定义,里面有我整理的一些较为常用的宏定义,希望能帮到各位看官。
//设置 view 圆角和边框
#define CornerViewBorderRadius(View, Radius, Width, BorderColor)\
\
[View.layer setCornerRadius:(Radius)];\
[View.layer setMasksToBounds:YES];\
[View.layer setBorderWidth:(Width)];\
[View.layer setBorderColor:[BorderColor CGColor]]