当前位置: 首页 > news >正文

指定UIView的某几个角为圆角

在做iOS UI开发的时候我们会经常遇到要把一个矩形view的直角切成圆角,切圆角分两种情况:

1、把view的四个直角都切成圆角:

    //设置圆角半径值
    self.view.layer.cornerRadius  = 10.f;
    //设置为遮罩,除非view有阴影,否则都要指定为YES的
    self.view.layer.masksToBounds = YES;
复制代码

2、指定角设置圆角

    //把 view2 的 左下角 和 右下角的直角切成圆角
    UIView *view2 = [[UIView alloc] initWithFrame:CGRectMake(120,10,80,80)];
    view2.backgroundColor = [UIColor redColor];
    [self.view addSubview:view2];
    
    //设置切哪个直角
//    UIRectCornerTopLeft     = 1 << 0,  左上角
//    UIRectCornerTopRight    = 1 << 1,  右上角
//    UIRectCornerBottomLeft  = 1 << 2,  左下角
//    UIRectCornerBottomRight = 1 << 3,  右下角
//    UIRectCornerAllCorners  = ~0UL     全部角
    //得到view的遮罩路径
    UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:view2.bounds byRoundingCorners:UIRectCornerBottomLeft | UIRectCornerBottomRight cornerRadii:CGSizeMake(10,10)];
    //创建 layer
    CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
    maskLayer.frame = view2.bounds;
    //赋值
    maskLayer.path = maskPath.CGPath;
    view2.layer.mask = maskLayer;

复制代码

UIBezierPath是什么?

相关文章:

  • 内存屏障和 volatile 语义
  • 上传本地代码到github
  • Centos Crontab查看状态和开启
  • dotnet core高吞吐Http api服务组件FastHttpApi
  • 第四十一天
  • 秒级展现的百万级大清单报表怎么做
  • Confluence 6 属性的一个活动
  • 怎样寻回参数错误K盘的资料
  • Hibernate防止setter()方法更新数据库
  • 中国象棋残局库构建[抄]
  • java的四个访问权限修饰符的作用范围
  • arts-week10
  • 三剑客老大——awk企业实战,面试必备
  • 快讯 | 嘉益仕受邀在工博会期间参与研华物联网共创全球峰会
  • 曲率计算公式推导
  • 《深入 React 技术栈》
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • Java读取Properties文件的六种方法
  • JAVA之继承和多态
  • PHP的类修饰符与访问修饰符
  • SQLServer插入数据
  • 基于webpack 的 vue 多页架构
  • 如何用vue打造一个移动端音乐播放器
  • 自制字幕遮挡器
  • 走向全栈之MongoDB的使用
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • 组复制官方翻译九、Group Replication Technical Details
  • ###51单片机学习(2)-----如何通过C语言运用延时函数设计LED流水灯
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • (03)光刻——半导体电路的绘制
  • (JS基础)String 类型
  • (Python) SOAP Web Service (HTTP POST)
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (TipsTricks)用客户端模板精简JavaScript代码
  • (zt)最盛行的警世狂言(爆笑)
  • (附源码)计算机毕业设计ssm电影分享网站
  • (九)One-Wire总线-DS18B20
  • (考研湖科大教书匠计算机网络)第一章概述-第五节1:计算机网络体系结构之分层思想和举例
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (数位dp) 算法竞赛入门到进阶 书本题集
  • (已解决)什么是vue导航守卫
  • **PHP二维数组遍历时同时赋值
  • .NET BackgroundWorker
  • .NET Reactor简单使用教程
  • .NET 动态调用WebService + WSE + UsernameToken
  • .NET 反射 Reflect
  • .Net7 环境安装配置
  • .Net中的设计模式——Factory Method模式
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(白虎组)
  • [ 网络基础篇 ] MAP 迈普交换机常用命令详解
  • [30期] 我的学习方法
  • [C#]获取指定文件夹下的所有文件名(递归)
  • [C#]使用DlibDotNet人脸检测人脸68特征点识别人脸5特征点识别人脸对齐人脸比对FaceMesh
  • [CareerCup] 2.1 Remove Duplicates from Unsorted List 移除无序链表中的重复项