【发布时间】:2019-03-06 04:23:44
【问题描述】:
我想截图。在此屏幕截图中,我想要其中的文本和图像。但是,我遇到了一个问题,因为当我截取屏幕截图时,我只看到文本而看不到图像。
我认为问题在于clearContainerView 只包含文本而不包含图像。我不能将图像放在clearContainerView 中,因为我希望图像能够拉伸整个屏幕......并且我希望文本在标题和标签栏之间居中(如上图绿色方块所示)。
我的代码和图片如下:
这是我的代码:
@IBOutlet weak var clearContainerView: UIView!
@IBAction func takeScreenshotTapped(_ sender: UIButton) {
let screenshot = clearContainerView.screenshot()
print(screenshot)
}
extension UIView {
func screenshot() -> UIImage {
let image = UIGraphicsImageRenderer(size: bounds.size).image { _ in
drawHierarchy(in: CGRect(origin: .zero, size: bounds.size), afterScreenUpdates: true)
}
return image
}
}
关于如何做到这一点的任何建议?
【问题讨论】:
-
@AshishKakkad 不,背景图像不在名为
clearContainerView的 UIView 内。请阅读最后一段以获得解释。 -
@AshishKakkad 请再读一遍,这不是重复的。
-
您需要将该图像放入您的 clearContainer 中。因为您正在拍摄 clearContainer 的快照,而该代码只能捕获 clearContainer 的内容
-
@SahilManchanda 请阅读我的问题,上面写着:“我认为问题在于
clearContainerView仅包含文本而不包含图像。我无法将图像放入clearContainerView因为我希望图像拉伸整个屏幕......并且我希望文本在标题和标签栏之间居中(如上面的绿色方块所示)。”这对你有意义吗?谢谢 -
我会试一试,让你知道它是否有效
标签: ios swift uiview uikit uigraphicscontext