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

news2024/12/22 12:01:31

业务场景,之前是直接将当前的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.coloradmin.cn/o/1139431.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

seaborn绘图(自用)

import seaborn as sns import matplotlib.pyplot as plt# set_theme设置主题 #sns.set_theme(style"whitegrid") #白色+刻度线,无坐标轴标度 #sns.set_theme(style"white") #白色无刻度线,无坐标轴标度 #sns.set_theme(…

DLedgerServer消息写入

下面以一个demo来理解消息DLedger消息写入和同步其他Peers的流程 /*** 创建DLedgerServer*/public DLedgerServer create(String selfId, String peers, String leaderId) {DLedgerConfig dLedgerConfig new DLedgerConfig();dLedgerConfig.setMappedFileSizeForEntryData(102…

Wt库的下载器程序

#include <stdio.h> #include <string.h> #include <stdlib.h> #include <microhttpd.h> // 设置服务器的地址和端口号 const char *proxy_host ""; const int proxy_port 8000; // 下载的文件路径 const char *filename "xiuxiu.…

电脑桌面文件不见了怎么恢复?4个方法!(详细步骤分享)

“这下可怎么办呀&#xff1f;我有些比较重要的文件保存在桌面&#xff0c;现在这些文件都莫名奇妙的丢失了&#xff0c;我应该怎么将它们恢复呢&#xff1f;快帮帮我吧&#xff01;” 在日常使用电脑时&#xff0c;很多电脑用户为了方便&#xff0c;可能会随手将一些文件直接保…

微信视频怎么录屏?超简单教程,一学就会!

“微信视频的时候怎么录屏呀&#xff1f;和朋友打微信视频&#xff0c;她每次都偷偷录我的丑照&#xff0c;我也想把她录下来&#xff0c;但是不会怎么操作&#xff0c;求求大家教教我&#xff01;” 微信作为全球最大的社交媒体平台之一&#xff0c;承载了无数珍贵的瞬间和回…

iPhone强制重启教程来了!(已解决)

强制重启是解决苹果手机系统故障问题的首选操作&#xff0c;是通过特殊组合按键来强制关机并重新启动设备的操作。可以用来应对系统崩溃、设备无响应、白苹果、死机、闪退、莫名其妙黑屏等情况。 那么大家知道该如何将iPhone手机强制重启吗&#xff1f;iphone强制重启的方法是…

福建厦门航空飞机零部件检测3D扫描测量尺寸偏差-CASAIM中科广电

航空航天是一个创新型发展国家的尖端命脉&#xff0c;代表着一个国家科学技术的先进水平。在航空航天工业的发展和组成领域中&#xff0c;对于在制造业中的航空航天产品零部件精度要求十分严苛&#xff0c;从前期的设计、中期建造、后期维修检测&#xff0c;任何一个环节、任何…

Mybatis一对多查询,分页显示问题解决方案

原文&#xff1a;Mybatis一对多查询&#xff0c;分页显示问题解决方案_mybatis一对多分页问题-CSDN博客 在我们的开发中也许是遇到最多的功能&#xff0c;一张表的分页&#xff0c;多张表一对一功能的分页相信大家写来都是得心应手&#xff0c;但是在一对多分页查询的时候大家…

【Ubuntu18.04】激光雷达与相机联合标定(Livox+HIKROBOT)(一)相机内参标定

LivoxHIKROBOT联合标定——相机内参标定 引言1 海康机器人HIKROBOT SDK二次开发并封装ROS1.1 介绍1.2 安装MVS SDK1.3 封装ROS packge 2 览沃Livox SDK二次开发并封装ROS3 相机雷达联合标定——相机内参标定3.1 环境配置3.1.1 安装依赖——PCL 安装3.1.2 安装依赖——Eigen 安装…

【表面缺陷检测】钢轨表面缺陷检测数据集介绍(2类,含xml标签文件)

一、介绍 钢轨表面缺陷检测是指通过使用各种技术手段和设备&#xff0c;对钢轨表面进行检查和测量&#xff0c;以确定是否存在裂纹、掉块、剥离、锈蚀等缺陷的过程。这些缺陷可能会对铁路运输的安全和稳定性产生影响&#xff0c;因此及时进行检测和修复非常重要。钢轨表面缺陷…

GaussDB SQL基础语法示例-BOOLEAN表达式

目录 一、前言 二、GaussDB SQL 中的BOOLEAN表达式介绍 1、概念 2、组成 3、语法示例 三、在GaussDB SQL中的基础应用 1、示例1&#xff0c;使用比较运算符 2、示例2&#xff0c;使用逻辑运算符 3、示例3&#xff0c;使用IS NOT NULL运算符 4、示例4&#xff0c;使用…

vscode安装包下载——vscode的下载速度慢问题两种解决方法

1.vscode下载&#xff1a; 1.首先我们去官网下载vccode&#xff0c;下载过程非常慢&#xff1a; 官网链接&#xff1a; https://code.visualstudio.com/ 2.解决办法1 这是因为国外镜像地址下载慢的原因&#xff0c;此时需要去国内镜像地址进行下载&#xff0c;复制下载链接&…

【Andriod】使用adb命令安装和卸载apk的通用python脚本

文章目录 1.前言2.连接设备3.从本机通过adb安装apk4.从本机通过adb卸载apk 1.前言 如不会使用adb请看之前的文章 【Andriod】adb调试安卓手机时连接真机或模拟器的3种方法&#xff0c;你知道么&#xff1f; 2.连接设备 import os # python标准库中的os模块""&qu…

互动直播UI设置 之 主播UI

目录 一、普通模式下&#xff0c;布局选项 1、布局按钮 1&#xff09;、点击布局按钮 2&#xff09;、选择哪种布局后&#xff0c;主进程通过WM_COPYDATA 发送信息 2、duilib样式布局文件 1&#xff09;、主画面 2&#xff09;、连麦者画面 3、主画面自动调整宽度 1&a…

UnrealSynth - 基于虚幻引擎的YOLO合成数据生成器

UnrealSynth虚幻合成数据生成器利用虚幻引擎的实时渲染能力搭建逼真的三维场景&#xff0c;为YOLO等AI模型的训练提供自动生成的图像和标注数据&#xff0c;官方下载地址&#xff1a;UnrealSynth虚幻合成数据生成器。 UnrealSynth生成的合成数据可用于深度学习模型的训练和验证…

18.3 NPCAP 构建中间人攻击

ARP欺骗&#xff08;ARP Spoofing&#xff09;是一种网络攻击手段&#xff0c;其目的是通过欺骗目标主机来实现网络攻击。ARP协议是一种用于获取MAC地址的协议&#xff0c;因此欺骗者可以使用ARP欺骗来迫使其目标主机将网络流量发送到攻击者控制的设备上&#xff0c;从而实现网…

error LNK2019: 无法解析的外部符号

文章目录 1 问题2 出现该问题的原因和解决方法2.1 原因&#xff1a;2.3 解决方法&#xff1a;需要查看一下项目的属性配置是否正确&#xff1a; 3 其他可能得原因&#xff0c;但是本项目中没有出现 1 问题 在测试base64代码的时候&#xff0c;VS2022提示我错误如下&#xff1a…

Julia数值计算初步

文章目录 复数系统运算符三角函数指数、对数、取整 Julia系列&#xff1a;编程初步&#x1f525;数组 Julia作为主打数值计算的编程语言&#xff0c;对一些常用的计算函数提供了非常细致的支持&#xff0c;十分人性化&#xff0c;体验之后爱不释手。 复数系统 在Juli中&…

笔记本怎么录屏?这3个方法请你收好

在现代教育、工作和演示中&#xff0c;屏幕录制成为了无可替代的工具。它使我们能够捕捉电脑屏幕上的一切&#xff0c;从PPT演示到教程制作&#xff0c;再到技术支持。因此&#xff0c;选择合适的录屏工具显得尤为重要。本文将详细介绍笔记本怎么录屏的3个方法&#xff0c;这些…

软件绘制 硬件加速绘制 【DisplayList RenderNode】

Android4.0以后&#xff0c;系统默认开启硬件加速来渲染视图 异同点 共同点 两者都是从SF获取一块内存&#xff0c;绘制都是在APP端&#xff0c;绘制好后都是通知SF去进行合成图层 真正的区别 真正的区别&#xff1a;绘制是通过CPU还是GPU完成的视图绘制。 对应区别在代码中的体…