An empty snapshotView on iPhone 7/7plus

前端 未结 2 1496
傲寒
傲寒 2021-02-19 19:28

My first question here:) Recently I update my Xcode to 8, and the resizableSnapshotView method doesn\'t work properly on some simulators. The snapshotView works we

2条回答
  •  傲寒
    傲寒 (楼主)
    2021-02-19 20:27

    Works in:

    • Version 8.1 (8B62)
    • Simulator Version 10.0 (SimulatorApp-700.14

    Swift 3

    import Foundation
    import UIKit
    
    extension UIView {
        func snapshotView() -> UIView? {
            guard let image = snapshotImage() else { return nil }
            return UIImageView(image: image)
        }
    
        func snapshotImage() -> UIImage? {
            UIGraphicsBeginImageContextWithOptions(bounds.size, isOpaque, contentScaleFactor)
            defer { UIGraphicsEndImageContext() }
    
            drawHierarchy(in: bounds, afterScreenUpdates: false)
    
            return UIGraphicsGetImageFromCurrentImageContext()
        }
    }
    

提交回复
热议问题