我的应用程序需要大约10秒才能渲染出应用了许多滤镜的全分辨率图像。我想允许用户保存或使用UIActivityViewController
分享。我已经将UIActivityItemSource
子类化,因此它会在活动视图打开时提供缩略图。
如何制作,以便我的素材来源在后台渲染图片?具体来说,我想允许视图控制器最小化并显示进度条。
我已经有进度条工作,我只需要知道如何在后台执行以下操作:
func activityViewController(activityViewController: UIActivityViewController, itemForActivityType activityType: String) -> AnyObject? {
// this step takes 10 seconds
// is there any way to do it in the background?
// So: the activity view can minimize
// and the main thread is free to update my progress bar
let image = renderFullImage()
return image
}
答案 0 :(得分:0)
诀窍是使用 //place this inside of your animate function as a property
complete:function() {
$(id).css("background-color", "#78FF81");
});
代替UIActivityItemProvider
。您应该覆盖已在后台调用的UIActivityItemSource
方法。