【问题标题】:Swift Get UIImage from layers of UIViewSwift 从 UIView 的层中获取 UIImage
【发布时间】:2017-08-16 22:56:22
【问题描述】:

我的 UIView 中有 CAShapeLayers,我想要视图中的 UIImage。
所以我正在尝试通过下面的函数,但在
处出现错误 UIGraphicsGetCurrentContext()

extension UIView
{
    func getImgFromVyuFnc() -> UIImage
    {
        UIGraphicsBeginImageContext(self.frame.size)

        self.layer.renderInContext(UIGraphicsGetCurrentContext())
        let image = UIGraphicsGetImageFromCurrentImageContext()

        UIGraphicsEndImageContext()
        return image!
    }
}

致命错误:在展开可选值时意外发现 nil 2017-08-17 04:17:47.230474 PicPac[1095:488887] 致命错误:在展开可选值时意外发现 nil

【问题讨论】:

  • 最可能的问题是self.frame.size 在一个或两个维度上为零。
  • 很高兴我能提供帮助。现在作为答案发布。祝你的应用好运!

标签: ios swift uiview uiimage calayer


【解决方案1】:

如果传递给UIGraphicsBeginImageContext(_) 的大小在一个或两个维度中为零,则UIGraphicsGetCurrentContext() 返回nilUIGraphicsGetImageFromCurrentImageContext() 也是如此。

【讨论】:

  • 感谢您的提示和设置帧大小对我有用。你也可以考虑为我的问题投票吗?所以它会出现并帮助像我一样面临问题的其他人。
猜你喜欢
  • 1970-01-01
  • 2011-06-05
  • 2019-10-17
  • 2011-06-27
  • 1970-01-01
  • 2012-12-25
  • 1970-01-01
  • 1970-01-01
  • 2018-01-09
相关资源
最近更新 更多