Ich habe eine benutzerdefinierte UIControl
, und ich möchte, dass es einen Schatten hat, also setze ich die relevanten Eigenschaften auf layer
. Ein Schatten erscheint wie gewünscht um die Ansicht, aber ein Schatten erscheint auch unter dem Text einer UILabel
, die eine Unteransicht ist. Wie hörst du damit auf? Ich möchte nur den Schatten um die äußere Superansicht.CALayer-Schatten davon abhalten, Subviews zu beeinflussen?
...
init() {
label = UILabel()
label.translatesAutoresizingMaskIntoConstraints = false
self.translatesAutoresizingMaskIntoConstraints = false
addSubview(label)
self.layer.masksToBounds = false
self.layer.shadowColor = UIColor.blackColor().CGColor
self.layer.shadowOpacity = 1.0
self.layer.shadowRadius = 2.0
// Adding these lines trying to explicitly stop shadow on label...
label.layer.shadowOpacity = 0
label.layer.shadowColor = nil
...
}
Versuchen Sie null Schatten für label.layer einstellen, nach self.layer Schatten der Konfiguration? –
Ja, tat ich. Ich habe ein paar Zeilen zum Code in Frage gestellt. –