【发布时间】:2019-12-24 15:12:33
【问题描述】:
我正在尝试将PKDrawing 转换为UIImage 并将它们保存到照片中。这在关闭黑暗模式时可以正常工作,但是当它打开时,由于保存为图像时背景颜色为白色,因此白线消失了。
以下总结:self.traitCollection.performAsCurrent 无法解决问题
这是我尝试使用以下参考的代码(结果图片如下)
1
self.traitCollection.performAsCurrent {
var image:UIImage!
self.view.traitCollection.performAsCurrent {
let drawing = note.drawing as? PKDrawing
image = drawing!.image(from: drawing!.bounds, scale: 1.0)
}
let action = UIActivityViewController(activityItems: [image!],
applicationActivities: nil)
action.popoverPresentationController?.sourceView = self.collectionView.cellForItem(at: indexPath)
self.present(action, animated: true, completion:nil)
}
2
self.traitCollection.performAsCurrent {
var image:UIImage!
var drawing:PKDrawing!
drawing = note.drawing as? PKDrawing
image = drawing.image(from: drawing.bounds, scale: 1.0)
UIImageWriteToSavedPhotosAlbum(image, self, #selector(self.image(_:didFinishSavingWithError:contextInfo:)), nil)
}
第一张是关闭暗模式时的,第二张是开启时的
【问题讨论】:
标签: swift