Как получить полный снимок scrollview / tableview (Autolayout / SnapKit) - PullRequest
1 голос
/ 24 октября 2019

Когда я использую Рамку для размещения подпредставлений, я могу получить полный снимок прокрутки. Но когда я использую AutoLayout / SnapKit, приведенный ниже код не будет работать. Почему?

extension UIScrollView {

    var cc_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()
    }

}
...