Ich versuche, meine UIView
innerhalb der Tabelle Zelle Prototyp, um es Schatten für sie und ein paar mehr Styling Anpassung, aber aus irgendeinem Grund, wenn ich das Projekt bauen die Änderungen nicht angewendet werden.Swift @ IBDesignable/@ IBInspectable UIView Styling
Ich habe den nächsten Code für sie in separaten Datei CustomView.swift
import UIKit
@IBDesignable
class CustomView: UIView {
@IBInspectable var cornerRadius: CGFloat = 0 {
didSet {
layer.cornerRadius = cornerRadius
layer.masksToBounds = cornerRadius > 0
}
}
@IBInspectable var shadowOpacity: Float = 0 {
didSet {
layer.shadowOpacity = shadowOpacity
}
}
@IBInspectable var shadowRadius: CGFloat = 0 {
didSet {
layer.shadowRadius = shadowRadius
}
}
@IBInspectable var shadowOffset: CGSize = CGSize(width: 0.0, height: 0.0) {
didSet {
layer.shadowOffset = shadowOffset
}
}
@IBInspectable var shadowColor: UIColor? = UIColor(red: 157/255, green: 157/255, blue: 157/255, alpha: 1.0) {
didSet {
layer.shadowColor = shadowColor?.cgColor
}
}
}
ich das Feld im Inneren des „Attribut Inspektor“ sehen von Xcode 9
aber die Änderung nach dem Bau nicht angewendet Im Grunde sehe ich den Schatten nicht zur Ansicht.
Die interessanteste, dass ich den gleichen Ansatz bin mit Textfeldern sowie Tasten und dieser Code für UIButton/UITextField
arbeitet anzufertigen, aber nicht für UIView
Weiß jemand, warum es nicht für UIView
funktioniert?
Jede Hilfe sehr geschätzt.
Vielen Dank.
hallo, danke für das Kommen zu mir zurück. Ich habe Ihren Code-Vorschlag ausprobiert und es hat nicht funktioniert. So sieht mein Storyboard so aus [Storyboard] (https://i.imgur.com/xcRwYbu.png) und nachdem ich das Projekt erstellt habe, sehe ich das im Simulator für IPhone8 [sim_result] (https: // i .imgur.com/t0XtB7p.png) kein Schatten. Der Code in meinem CustomView.swift das gleiche plus Ihre vorgeschlagene Änderung. –
in Ihrem Storyboard screenshot Ich kann das clipsToBounds Flag nicht sehen, prüfen ob das nicht auf true gesetzt ist, das sollte auch false sein –
Hi yeah, ich denke das war ein Problem nach dem Setzen von clipToBounds auf false hat es angefangen zu arbeiten. Ich schätze deine Hilfe sehr. Danke –