|
1
72
我想你可能想要
请注意,它可能在所有视图中都不起作用,特别是在一年左右以前,当我尝试将它与实时摄像头视图一起使用时,它不起作用。 |
|
|
2
180
iOS7有一个新方法,允许您将视图层次绘制到当前图形上下文中。这可用于快速获取ui图像。
我在上实现了一个类别方法
它比现有的要快得多
参考文献: https://developer.apple.com/library/content/qa/qa1817/_index.html Swift更新 :执行相同操作的扩展名:
Swift 3的更新
|
|
|
3
61
你需要捕捉 关键窗口 对于屏幕截图或uiview。你可以在里面做 视网膜分辨率 使用uigraphicsBeginImageContextWithOptions并将其比例参数设置为0.0f。它总是以本机分辨率捕获(iPhone4和更高版本的视网膜)。 这个屏幕截图是全屏的(关键窗口)
此代码以本机分辨率捕获uiview
如果需要的话,这会将uiimage以JPG格式保存在应用程序的文档文件夹中,质量达到95%。
|
|
|
4
21
IOS7之后,我们有以下默认方法:
调用上面的方法比自己将当前视图的内容呈现为位图图像要快。
如果要对快照应用图形效果(如模糊),请使用
|
|
|
5
10
我已经为uiview创建了可用的扩展,以便在swift中截图:
要使用它,只需键入:
|
|
|
6
9
iOS 10提供了新的API
|
|
|
7
7
此方法可以放入控制器类中。 |
|
|
8
5
苹果现在允许我们在公共应用程序中使用它,即使它是一个私有的API |
|
|
9
4
苹果不允许:
应用程序应使用
|
|
|
10
4
我创造了这个 屏幕截图保存扩展 从UIVIEW
呼叫 :
如果要创建PNG,必须更改:
通过
|
|
|
11
2
以下代码段用于截图:
使用
|
|
12
2
详细信息Xcode 8.2.1,Swift 3 ui快速查看屏幕截图导入uikit 扩展uiview{ var屏幕截图:uiimage?{ uigraphicsBeginImageContextWithOptions(bounds.size,false,1.0); 如果让u=uigraphicsgetcurrentContext()。{ DrawHierarchy(in:bounds,afterscreenupdates:true) 让屏幕截图=uigraphicsGetImageFromCurrentImageContext() uigraphicsEndImageContext()。 返回屏幕截图 } 返回零 } } < /代码>使用
|
|
|
13
1
|
|
|
14
1
Swift 4更新:
|
|
|
15
0
您可以使用以下uiview类别-
|