【发布时间】:2020-07-08 06:22:53
【问题描述】:
注意:iOS 13
以下代码:
extension UIScrollView {
var snapshot: UIImage? {
UIGraphicsBeginImageContextWithOptions(contentSize, false, 0)
defer {
UIGraphicsEndImageContext()
}
guard let context = UIGraphicsGetCurrentContext() else { return nil }
let previousFrame = frame
let previousOffset = contentOffset
frame = CGRect(x: 0, y: 0, width: contentSize.width, height: contentSize.height)
contentOffset = CGPoint.zero
layer.render(in: context)
frame = previousFrame
contentOffset = previousOffset
return UIGraphicsGetImageFromCurrentImageContext()
}
}
它在 iOS 12 中确实可以完美运行,但是,在 iOS 13 中只截取了(可见区域)scrollView 的一部分。
我想截图总的scrollView。有什么办法解决吗?
【问题讨论】:
-
几个小时前您已经发布了几乎相同的主题,不是吗?你为什么要反复这样做?
-
@ElTomato 我已经删除了那个帖子,不是很清楚。我没有找到解决这个问题的方法,所以我需要一些帮助。
-
我认为这是不可能的。您可能需要手动创建一个
UIView对象并自己添加更小的对象。
标签: swift uiscrollview ios13 snapshot