Einen Schatten für ein UIImageView, hat abgerundete Ecken?

Ich versuche zum erstellen einer ImageView , hat abgerundete Ecken und einen Schatten, um ihm etwas Tiefe. Ich war in der Lage zu schaffen, ein Schatten für die UIImageView, aber immer wenn ich den code Hinzugefügt, um auch abgerundete Ecken haben, es hatte nur abgerundete Ecken mit keine Schatten. Ich habe eine IBOutlet namens myImage, und es ist in der viewDidLoad Funktion. Hat jemand irgendwelche Ideen auf, wie zu make es die Arbeit? Was mache ich falsch?

override func viewDidLoad() {
    super.ViewDidLoad() 
    myImage.layer.shadowColor = UIColor.black.cgColor
    myImage.layer.shadowOpacity = 1 
    myImage.layer.shadowOffset = CGSize.zero
    myImage.layer.shadowRadius = 10
    myImage.layer.shadowPath = UIBezierPath(rect: myImage.bounds).cgPath
    myImage.layer.shouldRasterize = false
    myImage.layer.cornerRadius = 10
    myImage.clipsToBounds = true
}
Wenn Sie clipsToBounds = true Sie werden nie in der Lage, um zu sehen, einen Schatten, der geht über die Grenzen.
Ich würde empfehlen, setzen myImage in einer anderen Ansicht, die nicht die clipping-Grenzen und wenden Sie den Schatten auf, die anzeigen.
So dann setzen Sie einfach die clipsToBounds = false ?
Clips Grenzen auf true gesetzt wird clip-Ecken, sondern wird geschnitten Schatten. Das ist, warum Sie benötigen zwei Ansichten. Ein Behälter mit einem shadow, die ich abgeschnitten Grenzen mit einem Bild im inneren mit gestutzten Grenzen und einen Eckenradius.
Also, wenn ich verstehe richtig das myImage im inneren des neuen UIView, die nicht abschneiden Ecken und einen Schatten ??

InformationsquelleAutor John Hodge | 2017-01-05

Schreibe einen Kommentar