xcode - 模糊 TableView 除了一个单元格

标签 xcode uitableview xcode8 blur

除了单个表格 View 单元格之外,您如何模糊整个 View ?

效果应该和3D touch blur效果差不多。例如。邮件应用:

Blur effect

最佳答案

  • 模糊效果精确地应用于整个屏幕,但在邮件应用程序的情况下则应用于选定的单元格。 如果您只想将效果应用于您的表格 View ,您可以在每个单元格的内容之上放置一个模糊的视觉 View ,并将其效果设置为 nil

    cell.blurView.effect = nil
    

    当一个单元格被选中时出现。为此,请使用 didSelectRow 函数并重新加载数据,以便在最后获得所需的效果。 (您甚至可以使用 UIView.animate() 为更改设置动画)

    UIView.animate(withDuration: 0.5, animations: {
         cell.blurView.effect = UIBlurEffect.init(style: .light)
    }
    
  • 问题是我告诉你的解决方案不是很节能,但我可以想到另一个: 考虑有两个模糊 View ,当没有选择单元格时不显示任何效果,然后您可以在选择单元格后立即设置两个模糊 View ,以便第一个占据单元格顶部的整个屏幕部分,另一个覆盖底部。

  • 最后一个想法: 您可以在 didSelectRow 方法中向整个屏幕添加一个 blurView

    UIApplication.shared.keyWindow?.addSubview(blurView)  
    

    然后在上面添加单元格,当然,例如在点击模糊 View 时删除所有这些

希望对您有所帮助;)

关于xcode - 模糊 TableView 除了一个单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40448962/

相关文章:

ios - 如何在 IOS 中重新加载 UIBarButtonItem

c - 作为子进程运行时,OpenGL 窗口不会在 xcode (7.2) 中打开

ios - Objective-C 定义供多个 ViewController 使用的全局数组

ios - 单元格按钮上的操作

xcode - Swift stdlib 工具错误 : Expected a single Swift ABI version in

ios - 在XCode 8中使用Swift 3,如何控制UITableView subview

ios - 在以前的版本中为应用程序创建快捷方式会崩溃

ios - 具有辅助功能的 UITableViewCell 中的 UICollectionView

ios - UITableView 中 UISearchController 的背景颜色

ios - 检测头文件中的协议(protocol)可用性 - Objective-C