使用UIBezierPath和CAShapeLayer高效为UIView添加圆角

本文介绍了如何使用UIBezierPath和CAShapeLayer来高效地为UIView添加圆角,以解决不能单独设置每个角的圆角和性能消耗大的问题。通过代码示例展示了如何实现对不同角的自定义圆角,并对比了其他方法的性能差异,提供了一种性能更优的解决方案。
摘要由CSDN通过智能技术生成

我们在实际开发中,经常会遇到为某个view添加圆角的需求,这样出来的view的效果是比较好看的,那么平时用的最多的实现方式是什么呢?或许你也和我一样:

UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 200, 40)];
    btn.layer.cornerRadius = 5;
    btn.clipsToBounds = YES;

虽说这样也可以实现效果,但是存在两方面的弊端:
1)不能实现对单独的某个角添加圆角。
上面提到的这种,只能强制的对某个view的四个角全添加上相同的曲率的圆角,不能进行灵活的自定义,对于很多需求不能满足。
2)性能上的消耗比较大。
如果同一个页面中只有一两次这种操作,对性能的消耗还是可以忽略不计的,但是如果是在tableview或者collectionview中大量使用这种方式进行圆角

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值