2016-04-03 14 views
0

Ich versuche, einen vertikalen Schieberegler im Interface Builder zu rendern, aber wenn ich versuche, den Wert zu setzen, gibt Interface Builder eine Warnung aus.UISlider - IB_DESIGNABLE - Laufzeitattributwarnung

Was mache ich hier falsch?

@IBDesignable 
class VerticalSlider: UISlider { 

    @IBInspectable var setOrientation: Bool! { 
     didSet { 

      if setOrientation == true{ 

       self.transform = CGAffineTransformMakeRotation(CGFloat(-M_PI_2)) 

      }else { 

       self.transform = CGAffineTransformIdentity 

      } 

     } 
    } 


} 

Antwort

0

Ihre @IBInspectable Eigenschaft setOrientation sollte keine implizit ungeöffnete optional, nur eine nicht optionale Boolesche Eigenschaft sein.

Wenn Sie die Erklärung von setOrientation zu einem regulären (nicht optional) boolean mit einem Standard (initial) Wert zu ändern, sagen false, sollten Sie nicht mehr mit Warnungen aufgefordert, Ihre @IBInspectable Bezug.

@IBInspectable var setOrientation: Bool = false { ... }