Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/110.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在UIScrollView中显示多个UIView的小缩略图/镜像_Ios_Swift_Uiscrollview_Pencilkit - Fatal编程技术网

Ios 在UIScrollView中显示多个UIView的小缩略图/镜像

Ios 在UIScrollView中显示多个UIView的小缩略图/镜像,ios,swift,uiscrollview,pencilkit,Ios,Swift,Uiscrollview,Pencilkit,我有一个包含多个视图(比如20个视图)的UIScrollView。每个视图都有一个背景色图像、一个包含多个形状的视图(带路径的CAShapeLayer)和一个PKCanvasView(来自iOS 13 PencilKit)。它基本上类似于PDFView:可以滚动浏览多个页面 我想显示所有这些视图的概览:UICollectionView,每个视图有一个单元格,用于“镜像”整个视图。我尝试从视图生成一个图像,将其与图形的图像重叠,将其缩小到所需的大小,然后在UICollectionViewCell中

我有一个包含多个视图(比如20个视图)的UIScrollView。每个视图都有一个背景色图像、一个包含多个形状的视图(带路径的CAShapeLayer)和一个PKCanvasView(来自iOS 13 PencilKit)。它基本上类似于PDFView:可以滚动浏览多个页面

我想显示所有这些视图的概览:UICollectionView,每个视图有一个单元格,用于“镜像”整个视图。我尝试从视图生成一个图像,将其与图形的图像重叠,将其缩小到所需的大小,然后在UICollectionViewCell中将此图像用作缩略图。然而,这需要非常长的时间,我不能在后台线程上完成


我见过其他应用程序也这么做,所以一定有办法:我该怎么做才能在UICollectionView中将这20个视图镜像为小缩略图?我希望用户点击一个名为“Overview”的按钮,该按钮立即显示UICollectionView,其中包含每个视图的缩略图。

为什么不将所有图像转换为PDF注释,然后创建一个快速PDF文件,将其填充到PDFView中,并使用PDFKit的缩略图功能快速渲染缩略图?您甚至可以使用PDFvie截取PDF文件中图像的点击事件。问题是,我不仅需要图像,而且很容易制作。我需要整个视图及其所有子视图;图像只是我需要显示的内容的一部分。但是,将所有内容呈现到一个图像(或pdf文档)中需要花费很多时间。我需要每个视图的一个小屏幕截图,因为该视图已经显示了所有内容,为什么需要快速执行此操作而不是在后台线程上执行?因为用户应该能够随时通过单击按钮打开包含所有这些缩略图的菜单。当用户更改my Scrollview中的5个视图时,例如通过更改图像,然后点击overview按钮,更改需要在那里可见。再次渲染和调整所有视图的大小需要1秒,20个视图意味着每次用户想要查看概览时需要等待20秒,我看到了,所以您将所有视图单独渲染为图像,是的,这很粗糙