【问题标题】:UIVisualEffectView and UITableViewUIVisualEffectView 和 UITableView
【发布时间】:2024-05-23 17:20:02
【问题描述】:

我已将 UITableView 放入 UIVisualEffectView 以实现活力。一切正常,除了反弹功能。滚动时没有单元格的空间以灰色而不是模糊效果绘制。我试图将所有背景颜色设置为清除,但仍然不会显示模糊。有什么方法可以让背景与表格视图的其余部分具有相同的效果?

You can find the demo project here

【问题讨论】:

  • 你有一些代码可以玩吗?
  • @Jasper 我已经编辑了问题并添加了演示项目
  • 不知道为什么在实际使用 swift 时添加 Objective-c 作为标签
  • 抱歉,我已经习惯了使用 ObjC,这是我第二个使用 swift 的项目...

标签: ios swift uitableview uivisualeffectview


【解决方案1】:

从 Property 中设置 Table view、TableviewCell 和 ContainerView 的清除颜色。如果不清除,则将代码放入您的视图控制器中。还选择单元格无选项。

SWIFT

func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {
    cell.backgroundColor = UIColor.clearColor()
} 

【讨论】:

  • 我这样做了,但不幸的是单元格不是问题,而是没有单元格的空间没有显示模糊效果:/
【解决方案2】:

所以我找到了答案。您需要设置白色,而不是将背景设置为清晰的颜色。

override func viewDidLoad() {
    super.viewDidLoad()

    self.tableView.backgroundColor = UIColor.whiteColor()
}

【讨论】: