2016-06-15 4 views
1

Ich versuche, Schatten Offset der Schaltfläche mit @ IBInspectable setzen, aber es hat Mindestwert 0, aber ich möchte negativen Wert setzen.Ich kann keinen negativen Wert von CGSize in @IBInspectable in swift setzen

like this button.layer.shadowOffset = CGSize(width: -10.0, height: -10.0) 
I have following code 

@IBInspectable var shadowRadius: CGFloat { 
     get { 
      return layer.shadowRadius 
     } 
     set { 
      layer.shadowRadius = newValue 

     } 
    } 

Antwort

0

Sieht aus wie Apfel falschen Typ CGSize für Schattenoffset wählen. Negative Größe ist kein logischer Wert. Noch zur Lösung dieses speziellen Problems müssen wir den Builder Interface erlauben, einen negativen Wert zu setzen. So ist meine vorgeschlagene Problemumgehung:

@IBInspectable var shadowWidthOffset: CGFloat { 
    get { 
     return _shadowOffsetWidth 
    } 
    set { 
     _shadowOffsetWidth = newValue 
    } 
    } 

    @IBInspectable var shadowHeightOffset: CGFloat { 
    get { 
     return _shadowOffsetHeight 
    } 
    set { 
     _shadowOffsetHeight = newValue 
    } 
    } 

    override func drawRect(rect: CGRect) { 
    super.drawRect(rect) 
    ... 
    layer.shadowOffset = CGSizeMake(_shadowOffsetWidth, _shadowOffsetHeight) 
    } 
Verwandte Themen