ココアバインドの編集
バインドインスペクタを使ってバインドの設定を変更します。
手順
- Interface Builder で望みのバインドを含むストーリーボードまたは xib ファイルを開きます。
- Interface Builder で、バインドを含むビュー要素を選択します。
- [表示(View)] > [ユーティリティ(Utilities)] > [バインドインスペクタの表示(Show Binding Inspector)] を選択します。
- バインドインスペクタで、編集したいバインドの隣の開閉用三角形をクリックします。
- インスペクタで、バインドの値を設定するためのフィールド、メニュー、チェックボックスを使用して下さい。
以下の図に示すようにバインドインスペクタは、ユーティリティ領域に表示されます。
バインドインスペクターは、図 1 に示したように、ターゲット、値変換、ユーザーインターフェイス要素のプレースホルダを有効にします。表示されるオプションとプレースホルダは、ココアバインドリファレンス 内のこれらの記載したものに対応します。
図 1 バインドインスペクター
バインドターゲットの編集
ユーザーインターフェイス要素は、通常は直接モデルや NSController のサブクラスのコントローラのいずれかにバインドされます。
バインドのターゲットであるオブジェクトを設定するには、"Bind to(結合する)" ドロップダウンメニューを使用します。ターゲットがコントローラの場合は、[コントローラキー(Controller Key)] フィールドにプロパティのキーを入力してください。ターゲットがモデルの場合、[モデルキーパス(Model Key Path)] フィールドにプロパティのパスを入力します。
たとえば、上の図 1 に、NSSlider の値プロパティは、モデル、この場合、ビューコントローラの myValue プロパティにバインドされています。プロパティは、ビューコントローラークラスのトップレベルにあるため、パスは self.myValue です。モデルのキーパスは、モデル内の関係を横断するために使用できます。詳細については、ココアバインドリファレンス の Model-View-Controller デザインパターンを参照してください。
関連記事
バインド
決定済みの議論
ココアバインドプログラミングのトピック