我有下面的代码来模糊图像。
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中的前两个元素是这样的。

当我向下滚动然后再向上滚动时,它们会修复...

是什么导致了这个bug?
发布于 2021-04-27 21:44:12
当您在tableView单元格中创建模糊视图时,您将看到视图的大小,而不是现在的确切大小。因此,在第一次创建屏幕时,它看起来并不正常,但当你上下滚动时,它会循环使用,知道它的大小,它就会变得正常。
所以你可以通过在layoutsubviews()函数中给出大小来解决这个问题,比如
override func layoutSubviews() {
super.layoutSubviews()
blurredEffectView.frame = imageBlur.bounds
}https://stackoverflow.com/questions/67284207
复制相似问题