iOS如何删除细边框线然后使用layer.cornerRadius

iOS如何删除细边框线然后使用layer.cornerRadius,第1张

概述我总是使用简单的方法来获取视角圆角 + (void)setRoundedCornersByView:(UIView*) givenView roundAngle:(int)roundAngle borderWidth:(double)borderWidth borderColor:(UIColor*)borderColor alphaBorder:(double)alphaBorder { 我总是使用简单的方法来获取视角圆角

+ (voID)setRoundedCornersByVIEw:(UIVIEw*) givenVIEw roundAngle:(int)roundAngle borderWIDth:(double)borderWIDth bordercolor:(UIcolor*)bordercolor Alphaborder:(double)Alphaborder {    givenVIEw.layer.cornerRadius = roundAngle;    givenVIEw.layer.bordercolor = [[bordercolor colorWithAlphaComponent:Alphaborder] CGcolor];    givenVIEw.layer.borderWIDth = borderWIDth;    givenVIEw.layer.masksToBounds = YES;}

但是现在我在圆线周围有一个细边框,它是一条细线,颜色像圆形视图的背景颜色

如何在不使用onDraw的情况下删除它,因为它不可能 – 因为它意味着我必须覆盖所有需要圆角的iOS控件.

你尝试使用

UIBezIErPath *maskPath = [UIBezIErPath bezIErPathWithRoundedRect:bound byRoundingCorners:corners cornerRadii:cornerRadii];CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];maskLayer.frame = givenVIEw.bounds;maskLayer.path = maskPath.CGPath;givenVIEw.layer.mask = maskLayer;

但是,正如你所看到的,它并没有完全圆润

解决方法 显然,在角点绘制剪辑后,图层边界不足以覆盖整个图像.因此,您可以稍微扩大图层的边界以覆盖视图的图像.像这样:

+ (voID)setRoundedCornersByVIEw:(UIVIEw *)givenVIEw roundAngle:(int)roundAngle borderWIDth:(double)borderWIDth bordercolor:(UIcolor *)bordercolor Alphaborder:(double)Alphaborder{  CGfloat offset = 1.f; // .5f is also good enough  givenVIEw.layer.cornerRadius = roundAngle + offset;  givenVIEw.layer.bordercolor = [[bordercolor colorWithAlphaComponent:Alphaborder] CGcolor];  givenVIEw.layer.borderWIDth = borderWIDth + offset;  givenVIEw.layer.masksToBounds = YES;  [givenVIEw.layer setBounds:CGRectMake(-offset,-offset,CGRectGetWIDth(givenVIEw.frame)  + offset * 2.f,CGRectGetHeight(givenVIEw.frame) + offset * 2.f)];}
总结

以上是内存溢出为你收集整理的iOS如何删除细边框线然后使用layer.cornerRadius全部内容,希望文章能够帮你解决iOS如何删除细边框线然后使用layer.cornerRadius所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1025992.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存