Сторона TableViewCell обрезается при применении маски градиента - PullRequest
0 голосов
/ 20 апреля 2019

Мой tableView находится в пустом представлении содержимого с ограничениями, удерживающими его на месте.Таблица будет правильно функционировать в контейнере сама по себе, но как только я применю градиент, используя приведенный ниже код, градиент будет работать отлично, за исключением того, что правая часть моего tableViewCells обрезается.Это происходит только при применении градиента.Любые рекомендации приветствуются.

Перед добавлением градиента табличное представление выглядит следующим образом:

TableView с полными TableViewCells

После добавления градиентавид таблицы выглядит следующим образом:

TableView с вырезанным 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 голосов
/ 20 апреля 2019

Поставьте некоторую задержку для кода градиента

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

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

}

Используйте этот способ.

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

Я надеюсь, что это работает для вас.

...