应用渐变蒙版时,TableViewCell的一侧被切除

时间:2019-04-20 05:20:03

标签: ios swift tableview gradient mask

我的tableView位于空白内容视图中,并具有将其固定在适当位置的约束。该表本身可以在容器中正常运行,但是一旦我使用下面的代码应用了渐变,渐变就可以正常工作,除了我的tableViewCells的右手边被切断了。仅在应用渐变时才会发生。任何建议将不胜感激。

在添加渐变之前,表视图如下所示:

TableView with full TableViewCells

添加渐变后,表格视图如下所示:

TableView with cut TableViewCells

这是我用来应用渐变的代码。

        let gradientLayerMask = CAGradientLayer()
    gradientLayerMask.frame = gradientMask.bounds
    gradientLayerMask.colors = [UIColor.clear.cgColor, UIColor.white.cgColor, UIColor.white.cgColor, UIColor.clear.cgColor]
    gradientLayerMask.locations = [0.0,0.1,0.9,1.0]

    gradientMask.layer.mask = gradientLayerMask

    exerciseTable.contentInset = UIEdgeInsets(top: 15, left: 0, bottom: 0, right: 0)

1 个答案:

答案 0 :(得分:-1)

为梯度代码添加一些延迟

func delay(time: Double, closure:
    @escaping ()->()) {

    DispatchQueue.main.asyncAfter(deadline: .now() + time) {
        closure()
    }

}

使用这种方式。

delay(time: 0.2) {
    //gradient code
}

我希望它对您有用。