Ich habe eine UITableView
wo meine Zelle backgroundView
ist ein UIImageView
. Ich möchte, dass die obere Hälfte jedes Bildes schwarz wird, damit ich etwas weißen Text überlagern kann.iOS Fade zu schwarz am oberen Rand von UIImageView
Ich habe mir einige Antworten wie this angesehen, aber keine scheint zu funktionieren.
In tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath)
Ich habe versucht:
var imageView = UIImageView(image: image)
var gradient: CAGradientLayer = CAGradientLayer()
gradient.frame = imageView.frame
gradient.colors = [UIColor.blackColor(), UIColor.clearColor()]
gradient.locations = [0.0, 0.1]
imageView.layer.insertSublayer(gradient, atIndex: 0)
cell!.backgroundView = imageView
Aber ich sehe keinen Gradienten und keinen Unterschied aus, wenn ich den Gradienten Code entfernen. Sitzt mein Farbverlauf unter dem Bild?
Wenn ich die Zeile imageView.layer.insertSublayer(gradient, atIndex: 0)
durch imageView.layer.mask = gradient
ersetzen, dann sind meine Zellen nur leer und weiß (kein Bild mehr).
Ich bin das Plakat der Antwort, die Sie im Zusammenhang mit . Bitte beachten Sie, dass 'gradient.colors'' CGColor's und nicht 'UIColor's enthalten sollte. – duci9y
Congrat to 3k;) – jezrael