美文网首页
iOS 给UI视图设置部分圆角(OC/Swift)

iOS 给UI视图设置部分圆角(OC/Swift)

作者: kobe飞侠24 | 来源:发表于2017-10-14 16:24 被阅读0次

有时候,我们在项目中会有这样的需求,一个button或者label只要切左边两个角的圆角或者只要一个角的圆角,比如下图

这个时候,系统单纯的layer.cornerRadius的需求就不能满足我们,我们就需要通过图层蒙版来帮助我们。

OC版

CGRect rect = cornerView.bounds;
CGSize radio = CGSizeMake(10, 10);//圆角尺寸
UIRectCorner corner = UIRectCornerBottomLeft | UIRectCornerBottomRight;//这只圆角位置
UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:rect byRoundingCorners:corner cornerRadii:radio];
CAShapeLayer *masklayer = [[CAShapeLayer alloc]init];//创建shapelayer
masklayer.frame = cornerView.bounds;
masklayer.path = path.CGPath;//设置路径
cornerView.layer.mask = masklayer;

Swift版

let rect = cornerView.bounds 
let radio = CGSize(width: 30, height: 30) // 圆角尺寸
let corner = UInt8(UIRectCorner.topLeft.rawValue) | UInt8(UIRectCorner.topRight.rawValue) // 这只圆角位置
let path = UIBezierPath(roundedRect: rect, byRoundingCorners: UIRectCorner(rawValue: UIRectCorner.RawValue(corner)), cornerRadii: radio)
let masklayer = CAShapeLayer() // 创建shapelayer
masklayer.frame = cornerView.bounds
masklayer.path = path.cgPath // 设置路径
cornerView.layer.mask = masklayer

完整版demo:点我

相关文章

  • iOS 给UI视图设置部分圆角(OC/Swift)

    有时候,我们在项目中会有这样的需求,一个button或者label只要切左边两个角的圆角或者只要一个角的圆角,比如...

  • 微信小程序学习笔记(二)

    1、overflow 超出部分需要截取类似iOS makestobounds 的性质,适用场景就像父视图设置圆角以...

  • iOS UIView设置阴影效果

    做iOS开发的都会知道,给一个视图设置圆角只需要设置layer.cornerRadius,并masksToBoun...

  • iOS总结目录

    1. iOS系统结构 2.iOS基础 ① OC ② swift ③ UI 3. iOS进阶

  • 设置视图部分圆角

    原文链接:https://blog.csdn.net/timtian008/article/details/807...

  • iOS Masonry布局(四) - 视图设置圆角

    视图设置任意圆角 Masonry布局视图设置圆角 若使用Masonry布局的视图设置后发现,设置的圆角不起作用。这...

  • iOS Masonry - 视图设置圆角

    视图设置任意圆角 Masonry布局视图设置圆角 若使用Masonry布局的视图设置后发现,设置的圆角不起作用。这...

  • OC - Code

    UI ImageView 含有图片的视图:切圆角 + 阴影 TextView 限制最大字数、可设置 placeho...

  • iOS视图部分圆角

    我们都知道iOS视图圆角 但是某些需求上可能我们只需要指定View的某几个角为圆角例如: 图中框出的橘色部分我们只...

  • swift 设置部分圆角

    可以将下面的configRectCorner方法写成公共方法,方便调用 demo https://github.c...

网友评论

      本文标题:iOS 给UI视图设置部分圆角(OC/Swift)

      本文链接:https://www.haomeiwen.com/subject/hqaxuxtx.html