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

ios 代码上下文截屏之后导致的图片异常问题

业务场景,之前是直接将当前的collectionview截长屏操作,第一次截图会出现黑色部分原因是视图未完全布局,原因是第一次使用了Masonry约束然后再截图的时候进行了frame赋值,可以查看下Masonry约束和frame的冲突,全部修改成Masonry约束之后解决,现在一切都正常.

突然产品来了个需求,就是要把一些不需要的元素过滤掉,因此我修改了数据源之后reloadData然后重新截图,这个时候出现了异常

图片上可以很明显看得出来左右两边会有一个白色的尖角出来(但是视图展示正常),看起来像是一个圆角,然后我怀疑是某个图层出了问题,然后就把所有元素都设置了不一样的背景色,但是结果发现,这个白色位置和颜色并没有发生任何改变,中间怀疑是 layerCornerradius导致的,所以等刷新之后再切圆角,偶然就好了,但是并没有彻底好,此处可以确定为layer层导致,然后就一直集中在layer的圆角解决方案上来,后面自己画了一个layer,最后发现根本无法解决,然后我打算换一个思路解决,既然是layer层的问题,我就改变截图方式,我查看了之前的方式是根据- (void)renderInContext:(CGContextRef)ctx;,这个处理的就是layer层,然后我修改为- (BOOL)drawViewHierarchyInRect:(CGRect)rect afterScreenUpdates:(BOOL)afterUpdates方式后解决,可以判断的是因为圆角导致了离屏渲染从而layer层的截图出现了问题,到此一切解决

http://www.lryc.cn/news/211213.html

相关文章:

  • 《嵌入式软\硬件开发难点-2023-10-29》
  • 基于5G工业CPE打造智慧煤矿无人巡检监测应用
  • 考点之数据结构
  • 07、SpringCloud -- jmeter 压测
  • 省市区三级联动查询redis(通过python脚本导入数据)
  • Linux命令(108)之dirname
  • SDL事件处理以及线程使用(2)
  • DAY38 动态规划 + 509. 斐波那契数 + 70. 爬楼梯 + 746. 使用最小花费爬楼梯
  • Redis快速上手篇七(集群-一台虚拟机六个节点)
  • 社恐了怎么办?如何改变社交恐惧症?
  • HiQPdf Library for .NET - HTML to PDF Crack
  • ES6中Set集合
  • 论坛介绍 | COSCon'23 开源文化(GL)
  • 【httpd】 Apache http服务器目录显示不全解决
  • 笔记本电脑搜索不到wifi6 无线路由器信号
  • js获取input?
  • STM32 CAN使用
  • 安全和便捷:如何将运营商二要素API应用于实名制管理中
  • leetcode-二叉树
  • 【鸿蒙软件开发】ArkTS基础组件之TextTimer(文本显示计时)、TimePicker(时间选择)
  • pytorch 笔记:KLDivLoss
  • 父子项目打包发布至私仓库
  • 汽车网络安全--ECU的安全更新
  • NLP之搭建RNN神经网络
  • Android问题笔记四十三:JNI 开发如何快速定位崩溃问题
  • 机器学习 | 决策树算法
  • javascript中各种风骚的代码
  • el-tree横向纵向滚动条
  • STM32G030F6P6 芯片实验 (一)
  • Wpf 使用 Prism 实战开发Day01