Ich habe eine scrollview> ContentView> TextLabel-Setup, wo der Verlauf angezeigt wird, aber nicht funktioniert, wie ich es will. Es ist ein klarer Hintergrund scrollView, also suche ich nur nach einer klaren Verlaufsmaske über dem Text. I found something ähnlich wie ich in Objective-C suche, aber dieser Thread hat keine Swift-Lösung.Farbverlauf am Anfang/Bot von Scrollview Wenn es zusätzlichen Inhalt gibt
Mein Endziel scheint etwas zu sein, das die meisten Leute benutzen könnten, also bin ich überrascht, dass es noch keine Swift-Version gibt. Die Funktionalität, die ich versuche zu kodieren ist:
- Manchmal passt der Text perfekt in die feste Größe der scrollView, so dass es keinen Farbverlauf geben sollte.
- Wenn der Text länger ist als passen kann und sich ein Teil davon unterhalb der unteren Grenze des scrollView befindet, sollte der untere Teil der Ansicht zum Löschen verschwinden.
- Sobald der Benutzer scrollt nach unten und die Spitze sollte verblassen, was darauf hinweist, dass es oben mehr gibt.
habe ich versucht, diesen Code Kugel # 2 zu handhaben:
let gradient = CAGradientLayer()
gradient.frame = self.bio_ScrollView.superview!.bounds ?? CGRectNull
gradient.colors = [UIColor.whiteColor().CGColor, UIColor.clearColor().CGColor]
//gradient.locations = [0, 0.15, 0.25, 0.75, 0.85, 1.0]
gradient.locations = [0.6, 1.0]
self.bio_ScrollView.superview!.layer.mask = gradient
Aber es blendet alles, einschließlich der Taste darunter, die in der Scroll eindeutig nicht ist:
Wenn ich die .superview entferne und sie direkt auf die scrollView anwende, blendet sie nur den gesamten Text unterhalb des sichtbaren Teils aus:
Weiß jemand etwas darüber, wie man das richtig umsetzt?
Arbeitete für mich, nachdem ich eine Erweiterung zu UIScrollView hinzugefügt, um die IsAtTop-Eigenschaft zu verwenden. http://stackoverflow.com/a/14745900/4228969 – toddg