可能没注意的小功能(三):图像性能优化模拟器Debug

2020-06-11  本文已影响0人  橙橙橙橙橘子啦

关于图像的优化有很多细节,这里说一个点,当你需要优化页面图像性能的时候,用模拟器或真机运行的时候,点击Debug,会有几个选项,其中有两个值得注意:

如果是直接使用:tempImageView.image = UIImage(named: " "),一般会出现一下两种情况:

截屏2020-06-11下午2.42.26.png 截屏2020-06-11下午2.43.19.png
截屏2020-06-11下午2.44.24.png

这两种情况表明此时会更多的消耗GPU性能

这时可以使用图片上下文加载的方法,减少GPU的计算

 func avatarImage(image:UIImage, size:CGSize) -> UIImage? {
        let rect = CGRect(origin: CGPoint(), size: size)
        UIGraphicsBeginImageContextWithOptions(rect.size, true, 0)
        image.draw(in: rect)
        let result = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()
        return result
        
        
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        let rect = CGRect(x: 100, y: 100, width: 100, height: 100)

        let tempImageView = UIImageView(frame: rect)
        view.addSubview(tempImageView)
        let image = UIImage(named: "timg")!
        tempImageView.image = avatarImage(image: image, size: rect.size)

    }

之后在勾选就不会出现红色或者黄色了。

类似的还有设置圆角,更详细的原理这里就先不说了,只是记录一下直接使用的方法

上一篇 下一篇

猜你喜欢

热点阅读