微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

UIBlurEffect 不会模糊 UITableViewCell 中的整个图像

如何解决UIBlurEffect 不会模糊 UITableViewCell 中的整个图像

我有以下代码来模糊图像。

    let blurEffect = UIBlurEffect(style: .light)
    let blurredEffectView = UIVisualEffectView(effect: blurEffect)
    blurredEffectView.frame = imageBlur.bounds
    //blurredEffectView.alpha = 0.8
    imageBlur.addSubview(blurredEffectView)
    
    imageBlur.sd_setimage(with: URL(string: item._galleryURL),placeholderImage: UIImage(named: ""))

但是,当我运行代码时,我在 UITableView 中的前两个元素中看到了这一点。

enter image description here

当我向下滚动然后再次返回时,他们会修复...

enter image description here

是什么导致了这个错误

解决方法

当您在 tableView 单元格中创建模糊视图时,您的视图现在不是确切大小。所以在第一次创建屏幕时它看起来不太好,但是当你向下和向上滚动时它会回收并知道它的大小它变得没问题。

所以你可以通过在 layoutsubviews() 函数中指定大小来解决它

    override func layoutSubviews() {
    super.layoutSubviews()
    blurredEffectView.frame = imageBlur.bounds
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。