[Xcode 实际操作]九、实用进阶-(15)屏幕截屏:截取当前屏幕上的显示内容
本文将演示如何截取屏幕画面,并将截取图片,存入系统相册。
在项目导航区,打开视图控制器的代码文件【ViewController.swift】
1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib. 8 9 //从项目资源文件夹中,加载一张图片 10 let image = UIImage(named: "Picture") 11 //创建一个颜色对象,并使用一张图片,作为颜色对象的图案图片 12 let backgroundColor = UIColor(patternImage: image!) 13 //将进行平铺的图案。作为视图的背景颜色 14 self.view.backgroundColor = backgroundColor 15 16 //创建一个和屏幕尺寸相同的图形上下文 17 UIGraphicsBeginImageContext(self.view.frame.size) 18 //获得当前的图形上下文 19 let context = UIGraphicsGetCurrentContext() 20 //在当前上下文中,渲染当前视图控制器的根视图的层 21 self.view.layer.render(in: context!) 22 //将上下文中的内容,转换成图片对象 23 let contextImage = UIGraphicsGetImageFromCurrentImageContext() 24 25 //接着将图像存入系统相册 26 UIImageWriteToSavedPhotosAlbum(contextImage!, self, nil, nil) 27 //最后删除位于栈顶的图形上下文 28 UIGraphicsEndImageContext() 29 } 30 31 override func didReceiveMemoryWarning() { 32 super.didReceiveMemoryWarning() 33 // Dispose of any resources that can be recreated. 34 } 35 }