gpt4 book ai didi

ios - _UIReplicantView 和 snapshotViewAfterScreenUpdates 如何获取其内容?

转载 作者:IT王子 更新时间:2023-10-29 07:58:08 25 4
gpt4 key购买 nike

-renderInContext: 自出现以来就被广泛使用,但是它无法渲染 OpenGL 层,AVPreviewLayer(可能是因为它是一种 OpenGL 层)我仍然无法正确渲染 CATiledLayer。
iOS7 引入了 2 个新的 API 来获取屏幕截图,一个是 -snapshotViewAfterScreenUpdates: 返回特定 View (_UIReplicantView) 和 -drawViewHierarchyInRect:afterScreenUpdates: 最后一个是 -renderInContext 的一种替代品,不幸的是它似乎具有相同的局限性。
-snapshotViewAfterScreenUpdates: 它似乎也适用于 OpenGL 和 AVPreviewLayer,不幸的是,如果你想做特定的动画或使用内容作为某些东西的背景(比如 uibutton),这样的 View 并不是很有用。我试图从返回的 View 中获取内容,但我仍然没有运气。
有人试过了吗?

最佳答案

我一直在努力解决这个问题,最初我们通过连接到 NSRunLoop 并渲染到图像然后将它们合并在一起来解决它。真的很乱。

然后我们找到了一段似乎可以解决这个问题的代码,但你必须准备好跳出框框思考一下。

那个框架记录了一个 UIWindow 的视频,然后我们就停止了记录。通过 AVAssetImageGenerator(或类似的东西)插入它,然后抓取图像。

正如我所说,这是一种非常奇怪的解决方法,但它似乎对我们来说没问题。

可以在此处的库中找到 (ASScreenRecorder) 的代码。

https://github.com/alskipp/ASScreenRecorder

我们产品中的菜单之一是 OpenGL,其中一些具有视频背景!这对我们来说非常有效。但我不能确定这是否是我们对 OpenGL 的实现和使用所特有的。尽管如他的示例视频所示,它确实适用于相机 View 。

关于ios - _UIReplicantView 和 snapshotViewAfterScreenUpdates 如何获取其内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19567007/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com