上一篇中介绍了UITableViewCell视觉差滚动效果。本篇文章介绍UITableViewCell的圆角效果,确切的说是,UITableView的每个section四个角的圆角效果。

不想读文字的同学可以直接看代码.效果图如下:

cornerRadius.gif

步骤

备注:以下操作全部是在- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath 方法中进行的

<1> 设置cell的背景色透明

关于为什么必须设置背景色为透明,原因如下:

之所以设置为透明,是因为cell背景色backGroundColor是直接设置在UITableViewCell上面的,位于cell的第四层

backGroundView位于cell的第三层,也就是位于backGroundColor之上

我们所要做的操作是在cell的第三层——backGroundView上

第三层会挡住第四层,如果第四层设置了颜色,那么将来cell的圆角部分会露出第四层的颜色,也就是背景色

所以,必须设置cell的背景色为透明色!

另外:

第二层是UITableViewCellContentView,默认就是透明的,无需设置

第一层是UITableViewLabel,也就是cell.textLabel

<2> 创建CGMutablePathRef,保存绘制的路径信息

关于绘图,里面用到了下面这个函数:

CGPathAddArcToPoint(CGMutablePathRef __nullable path,

const CGAffineTransform * __nullable m, CGFloat x1, CGFloat y1,

CGFloat x2, CGFloat y2, CGFloat radius)

<3> 创建layer,并给layer添加上面的路径信息,进行渲染。

cell 的层次结构

cell的层次结构

文/VV木公子(简书作者)

PS:如非特别说明,所有文章均为原创作品,著作权归作者所有,转载请联系作者获得授权,并注明出处!如果您是iOS开发者,或者对本篇文章感兴趣,请关注本人,后续会更新更多相关文章!敬请期待!

layui 卡片式列表_UITableViewCell系列之(三)卡片式列表相关推荐

  1. 《 Python List列表全实例详解系列(三)》——列表添加元素(4种方法)

    < Python List列表全实例详解系列(三)> --列表添加元素(4种方法) 接上一篇:< Python List 列表全实例详解(二)>__访问列表元素(索引和切片)列 ...

  2. 带你自学Python系列(三):列表遍历(for循环)

    ↑ 点击上方[计算机视觉联盟]关注我们 今天是小编持续更新关于Python的知识总结以及Python实践项目应用的第3天,带你利用零碎时间自学最受欢迎的编程语言之一Python语言.你和小编一起打卡了 ...

  3. python系列(三)python列表详解

    博主QQ:819594300 博客地址:http://zpf666.blog.51cto.com/ 有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持! 本博文阅读目录: 1)len函数//查看 ...

  4. 带你自学Python系列(八):列表具体操作思维导图总结,再也不用翻书查用法了!...

    ↑ 点击上方[计算机视觉联盟]关注我们 今天是小编持续更新关于Python的知识总结以及Python实践项目应用的第8天,带你利用零碎时间自学最受欢迎的编程语言之一Python语言.你和小编一起打卡了 ...

  5. 微课系列(三):Python列表中存储的是元素的引用

    技术要点:在Python中,变量不直接存储值,而是存储值的引用.同样,在列表.元组.字典.集合等容器类对象中也是存储的元素值的引用. 以列表为例,当列表与整数相乘进行元素重复时,是对引用进行重复.这样 ...

  6. 【Android 进阶】仿抖音系列之列表播放视频(三)

    在上一篇[Android 进阶]仿抖音系列之列表播放视频(二)中,我们实现列表播放视频,这一篇我们来对其做些优化. [Android 进阶]仿抖音系列之翻页上下滑切换视频(一) [Android 进阶 ...

  7. 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(三)

    基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(三) 转载于:https://github.com/Meowv/Blog 上一篇完成了博客的主题切换,菜单和 ...

  8. 带你自学Python系列(六):列表解析和列表切片

    ↑ 点击上方[计算机视觉联盟]关注我们 今天是小编持续更新关于Python的知识总结以及Python实践项目应用的第6天,带你利用零碎时间自学最受欢迎的编程语言之一Python语言.你和小编一起打卡了 ...

  9. 深入剖析Redis系列(七) - Redis数据结构之列表

    前言 列表(list)类型是用来存储多个 有序 的 字符串.在 Redis 中,可以对列表的 两端 进行 插入(push)和 弹出(pop)操作,还可以获取 指定范围 的 元素列表.获取 指定索引下标 ...

最新文章

  1. 制作安全网站的checklist
  2. 019_Jedis的List数据类型
  3. kubernetes(一)kubeadm搭建k8s集群
  4. 无代码iVX编程实现简单 小蜜蜂 经典游戏
  5. 实战01_SSM整合ActiveMQ支持多种类型消息
  6. 高斯核函数python代码_单类SVM:SVDD
  7. android pdf 乱码怎么解决方案,pdf文件打开是乱码怎么办?pdf字体乱码的解决办法...
  8. SeaweedFS安全配置(Security Configuration)
  9. matlab 如何查数据类型,MATLAB数据类型
  10. 牛顿迭代公式(详细)
  11. 浏览器中cookies查看_如何在任何浏览器中阻止Cookies(除了您使用的网站外)
  12. 网页设计HTML遇到的问题,网页制作常遇到的问题集合
  13. 华为路由器(可网管)连接光猫配置(光猫为路由模式)
  14. java基础知识竞海报_40张风韵别致的海报设计(经典欣赏)
  15. 中国人工智能未来发展前景(AI+时代真正来临)
  16. 由内建质量到持续集成
  17. 前端入门——JavaScript
  18. 【Codeforces 1083A】The Fair Nut and the Best Path
  19. EP-PEG2000-EP,具有两个环氧基团的线性双功能PEG,EP-PEG2000-Epoxide
  20. c语言算术程序,(C语言)简单算术程序.ppt

热门文章

  1. System怎样获取当前系统时间
  2. python处理微信消息导入excel_python+openpyxl读取excel写入到另一个excel
  3. 毕业设计Spring boot问题记录(后端三):java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax;
  4. 关于VS中LNK1120与errorLNK2019问题
  5. windows之关闭thinkpad的默认fn功能键
  6. matlab蠓虫分类问题,蠓的分类问题.doc
  7. 浅谈——工科生如何撰写学术论文
  8. 一份应聘者所写的外链推广规划
  9. Cholesky分解(Matlab代码实现)
  10. train_test_split()函数用法