Swift 如何更快地将UIView渲染为UIImage
我正在尝试将UIView(带有子视图)渲染为UIImage 我正在使用新的iOS 10+Swift 如何更快地将UIView渲染为UIImage,swift,uiimage,uigraphicscontext,uigraphicsrenderer,Swift,Uiimage,Uigraphicscontext,Uigraphicsrenderer,我正在尝试将UIView(带有子视图)渲染为UIImage 我正在使用新的iOS 10+UIGraphicsImageRenderer,如下所示 let renderer = UIGraphicsImageRenderer(size: view.bounds.size) let image = renderer.image { ctx in view.drawHierarchy(in: view.bounds, afterScreenUpdates: true) } 但我的问题是,我怎
UIGraphicsImageRenderer
,如下所示
let renderer = UIGraphicsImageRenderer(size: view.bounds.size)
let image = renderer.image { ctx in
view.drawHierarchy(in: view.bounds, afterScreenUpdates: true)
}
但我的问题是,我怎样才能更快地做到这一点?我尝试在推送新UIViewController之前渲染此UIImage,它有一个超长的延迟,直到UIImage完成处理。我认为这是因为正在为每个实例化创建呈现程序uigraphicsimagerendercontext
在需要使用上下文渲染图像之前,是否有任何方法在背景中预加载上下文
还是我想优化这个错误
如果有任何帮助,我们将不胜感激。您是否调用您在
viewDidLoad
中添加的代码?否,我在推送到新的viewcontroller之前执行此操作。我正在渲染一个应用了过滤器和其他效果的UIView,因此我必须等到用户完成后才能运行此代码