1

取得したインターネット情報に基づいて、さまざまな IBInspectable アイテムを設定したいと思います。たとえば、緑、赤、オレンジの円の IBInspectables があります。リクエストが緑色の場合、isGreen inspectable を Yes に設定し、その他を no に設定したいと思います。他の2つも同様です。ここでIBInspectables を確認できます。そこに入れたコードでそれができることは知っていますが、プログラムでそれらを切り替える方法はありますか?

4

2 に答える 2

0

あなたは混乱しているように聞こえます。この用語は、タグIBInspectableを持つビュー オブジェクトのプロパティを表します。@IBInspectableこれは、Interface Builder 内からそのプロパティを変更できるようにすることを Interface Builder に伝えます。

Interface Builder から編集できることを除けば、IBInspectable プロパティは他のプロパティと何ら変わりはありません。

プロパティ直径を持つクラス CircleView がある場合:

class FooView: UIView {
  @IBInspectable var diameter: CGFloat {
    didSet {
      //Code to do something with a change to the diameter property
    }
}

ビュー コントローラーには、アウトレットを備えた FooView オブジェクトがあり、他のプロパティと同じようにコードでカスタム プロパティの値を変更できます。

class MyViewController: UIViewController {

  @IBOulet weak var fooView: FooView!

  @IBAction func buttonTapped(sender: UIButton) {
    fooView.diameter += 5
  }
}
于 2016-12-03T14:23:50.433 に答える