在swift中有UIGetScreenImage的替代方案吗?

时间:2015-02-06 06:51:17

标签: objective-c swift

我尝试下面的代码使用objective-c获取完整iPhone屏幕的屏幕截图。它使用objective-c在iPhone中完美运行。但是我没有在swift中获得全屏截图。任何人都可以提供给我一些关于这个的信息?

CGImageRef UIGetScreenImage(void);
CGImageRef screen = UIGetScreenImage();
UIImage* image = [UIImage imageWithCGImage:screen];
CGImageRelease(screen);

提前致谢

1 个答案:

答案 0 :(得分:0)

试试这个:

extension UIView {
    var snapshot: UIImage {
        get {
            UIGraphicsBeginImageContextWithOptions(self.bounds.size, false, UIScreen.mainScreen().scale)
            self.drawViewHierarchyInRect(self.bounds, afterScreenUpdates: true)
            let image = UIGraphicsGetImageFromCurrentImageContext()
            UIGraphicsEndImageContext()
            return image
        }
    }
}