所以我已经使用此代码截取屏幕上可见的特定区域(表格单元格):
UIGraphicsBeginImageContextWithOptions(inputView.bounds.size, false, 0.0)
inputView.layer.renderInContext(UIGraphicsGetCurrentContext()!)
let image = UIGraphicsGetImageFromCurrentImageContext() as UIImage
UIGraphicsEndImageContext()
let cellSnapshot : UIView = UIImageView(image: image)
然而,现在我的目标更复杂了:
棘手的部分... 虽然图像仍然隐藏了新设置,但我想截取/捕获视图排列的图像(包括图像下的每个视图)。
为什么这样? VC不会改变,但我会在第二张图片中滑动,看起来这个新布局是一个新的屏幕。
这可能吗?
答案 0 :(得分:0)
所以这里是拍摄任何视图快照的代码!只需粘贴此功能并将其传递给您想要捕获的视图!
let pictureOfView = snapshotOfView(passAViewHere)
func snapshotOfView (inputView: UIView) -> UIView {
UIGraphicsBeginImageContextWithOptions(inputView.bounds.size, false, 0.0)
inputView.layer.renderInContext(UIGraphicsGetCurrentContext()!)
let image = UIGraphicsGetImageFromCurrentImageContext() as UIImage
UIGraphicsEndImageContext()
let cellSnapshot : UIView = UIImageView(image: image)
cellSnapshot.layer.masksToBounds = false
return cellSnapshot
}