iOS UIView设置圆角 指定区域圆角

iOS的UIView提供了基本的设置圆角的方法,即:

        view.layer.cornerRadius= cornerRadius;

但是在项目中常常遇到需要在指定位置设置圆角,当然我们常常用UI切图的方式来实现,但是我们用代码也可以实现这一效果。

首先,iOS 11以上系统也提供了设置方法,即在设置cornerRadius的基础上,再设置圆角的方向maskedCorners:

        view.layer.maskedCorners = (CACornerMask)(UIRectCornerTopLeft|UIRectCornerTopRight);

而在iOS 11.0以前我们就需要用贝塞尔曲线来绘制圆角了,即:

        UIBezierPath * path = [UIBezierPath bezierPathWithRoundedRect:view.bounds byRoundingCorners:UIRectCornerTopLeft|UIRectCornerTopRight cornerRadii:CGSizeMake(cornerRadius, cornerRadius)];

        CAShapeLayer*maskLayer = [[CAShapeLayeralloc]init];

        maskLayer.frame=view.bounds;

        maskLayer.path= path.CGPath;

        view.layer.mask= maskLayer;

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容