swift的新手。我想截取视图控制器的截图,除了视图1以外的所有视图,视图3包含动态高度的栈视图。我知道如何获取viewcontroller的完整屏幕截图但我怎么能实现这一点。任何帮助。
答案 0 :(得分:1)
一种简单的方法是在渲染内容之前隐藏这两个视图,并在完成渲染后使它们可见。
view1.hidden = true
view3.hidden = true
UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, false, UIScreen.mainScreen().scale)
let ctx: CGContextRef = UIGraphicsGetCurrentContext()!
CGContextTranslateCTM(ctx,0,0)
UIColor.blackColor().set()
CGContextFillRect(ctx, previewRect)
view.layer.renderInContext(ctx)
let previewImage: UIImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
view1.hidden = false
view3.hidden = false