2017-03-06 18 views
-1

私はコードでスタイリングされなければならないビュー上に多くのUIButtonを持っています。 XCodeのインターフェースビルダーではできない丸みのあるボーダーをすべて与える必要があります。SwiftとiOSのコントロールに相当するCSSクラスはありますか?

スウィフトでは、CSSクラスを使ってウェブ上のものをスタイル付けするなど、一気にすべての要素をスタイルする方法があるのでしょうか?

各ボタンには私のコントローラにIBOutletがあり、同時にそれらをすべてスタイルするのがいいでしょう。

答えて

3

"XCodeのインタフェースビルダー"では実行できません。

確かに可能ですが、あなたはCSSの観点から考えて制限するさまざまな要素を考慮する必要があります。

UIButtonの拡張機能を設計します。そしてそれをIBDesignableにします。 IBで実際に見たい場合は、IBInspectableにしてください。あなたのコードは次のようになります:

@IBDesignable 
public class Button: UIButton { 
    @IBInspectable public var borderColor:UIColor? { 
     didSet { 
      layer.borderColor = borderColor?.cgColor 
     } 
    } 
    @IBInspectable public var borderWidth:CGFloat = 0 { 
     didSet { 
      layer.borderWidth = borderWidth 
     } 
    } 
    @IBInspectable public var cornerRadius:CGFloat { 
     get { 
      return layer.cornerRadius 
     } 
     set { 
      layer.cornerRadius = newValue 
      layer.masksToBounds = newValue > 0 
     } 
    } 
} 

特に、cornerRadius inspectableプロパティに注意してください。

最後にhere's a linkしかし、私はまだ私ができるよりも良いことを説明する価値があることがわかります。

関連する問題