私はCocoa Bindingsの基本的な理解を得ようとしています。本当にシンプルなプロジェクトを作りたいと思います。私はクラスPerson
を持っていて、それはタイプNSString
のname
という変数を持っています。ここで私は物事が仕事をしたい方法です:最も簡単なココアバインディングの例
- ユーザーがテキストフィールドに名前を入力し、「アップデート名」ボタン
- を押すと、テキストフィールドから文字列は
Person
クラスのインスタンスに保存されます。 - Person Controller(
Person
クラスにバインドされている)にバインドされたラベルは、Person
インスタンスの変数name
に従って自動的に値を変更します。
私はさまざまなチュートリアルやApple Mac Developer Libraryを読んで何時間も費やしましたが、それぞれの例では、テーブルでCocoaバインディングを使用する方法を示しています。はるかに単純なものを開発しようとすると、私は完全に失われていると感じます。私は基本プロジェクトを作成しました。残っているのは、すべてのバインディングを作成することだけです。私は親切に私のためのすべての接続を行い、うまくいけば私に説明を提供するように頼んでいます。 https://www.dropbox.com/sh/6hddfxyitqp6uoc/AACgaRhKBhLo6EXCVN9W6GQua?dl=0 私は今後この種のアプリを開発する予定なので、このプロジェクトはドキュメントベースのアプリです。
あなたは([ココアバインディングプログラミングトピックス]読みましたhttps://developer.apple.com/library/prerelease/content/documentation/Cocoa/Conceptual/CocoaBindings/CocoaBindings.html#//apple_ref/doc/uid/10000167-BBCFBCAG)?クラス 'Person'はKVOに準拠していなければなりません。 – Willeke
ラベルの値をコントローラーのControllerキー: 'selection'、モデルキーパス:' name'にバインドします。それで全部です。 – Willeke
私はそれを行うだけでいくつかの例外が発生し、アプリケーションが読み込まれません。私は明らかにオブジェクトコントローラでいくつかの接続を行う必要があります。また、クラス内でKVOを実装することも可能です。 e。私の 'Person'クラスをKVOに準拠させることができますか?私が取り組んでいるのと同じ仕事を達成するための別のアプローチを提案できれば、あなたの知識を共有してください。 – Yashman