【发布时间】:2019-01-07 11:56:38
【问题描述】:
我有一个UIScrollView,它有一个淡出的底部渐变层(如下面的截图)。我想在到达UIScrollView 的底部时将其删除。我在下面找到了帖子,但对我没有任何帮助。
https://stablekernel.com/how-to-fade-out-content-using-gradients-in-ios/
let gradient = CAGradientLayer()
gradient.frame = myTextView.bounds
gradient.colors = [UIColor.clear.cgColor, UIColor.black.cgColor, UIColor.black.cgColor, UIColor.clear.cgColor]
gradient.locations = [0, 0.0, 0.7, 1]
myTextView.layer.mask = gradient
override func layoutSubviews() {
gradient.frame = kvkkTextView.bounds
}
当我尝试改变渐变的框架时
private func updateGradientFrame() {
gradient.frame = CGRect(
x: 0,
y: kvkkTextView.contentOffset.y,
width: kvkkTextView.bounds.width,
height: kvkkTextView.bounds.height
)
}
它会导致一个奇怪的错误。当我滚动它时,屏幕上显示的文字很慢(当我快速滚动它时,屏幕显示为空白,然后出现文字)。
【问题讨论】:
标签: ios swift uiscrollview cagradientlayer