UIVisualEffectView 和 UITableViewCell 内部的触摸

UIVisualEffectView and touches inside UITableViewCell

我在自定义 UITableViewCell 中使用 UIVisualEffectView 时遇到问题。

当触摸 table 单元格时,效果视图似乎会自行打开活力,这根本不是我想要的效果。即使在导航到另一个视图并再次返回后,Vibrancy 似乎也能保持自身开启。

好的。我想我找到了解决方案。问题在于 UITableViewCell 的默认选择。我认为您的代码对此很熟悉:

class CustomTableViewCell: UITableViewCell {

    override func awakeFromNib() {
        super.awakeFromNib()

        selectedBackgroundView = UIView(frame: CGRect(x: -1, y: -1, width: 1, height: 1))
        selectedBackgroundView?.backgroundColor = .clear
    }
}

效果是http://pl.tinypic.com/player.php?v=o00z1k&s=9#.WOpT5VLUTMU

但稍微修改一下代码:

class CustomTableViewCell: UITableViewCell {

    override func awakeFromNib() {
        super.awakeFromNib()

        selectionStyle = .none
    }
}

活力效果会消失

注意,可以通过storyboard设置