XcodeとInterface BuilderのバインディングMInefield
-
06-07-2019 - |
質問
大丈夫、 Cocoa Dev Centralの「コアデータアプリケーションの構築」を完了した後、チュートリアルチュートリアルのコードと .nib
ファイルを参照として使用して、適切に組み立てられるように、独自のアプリケーションの構築を試し始めました。全体的に私はそれでかなりうまく管理しているが、私は思わぬ障害にぶつかったようだ。
チュートリアルのように、2つの NSTextView
ボックスでフォームを作成していますが、同じエンティティ内の異なる属性にリンクされています。他のすべてのコントロールは適切に動作し、レコード間を移動するときに値を保存/更新します(2番目のボックスが値を保存したくない日付ボックスの愚かさを除く)。すべてのバインディング設定と NSArrayController
をチュートリアルの .nib
に対してチェックして、どこがうまくいかないかを確認しました。最初のテキストボックスのフックを外し、同じ設定で再接続すると、突然魔法のように機能しました。ただし、2番目のボックスは動作を望んでおらず、プログラムを中断し続けます(デバッガーが表示され、あらゆる種類の変数とメモリアドレス、および率直に言って私の理解をはるかに超えるものを一覧表示します)。
現在、問題のボックスは次のように構成されています。
Class: NSTextView
Value: Bound to `history`
Controller Key: selection
Model Key Path: `description`
Checked: Allows Editing Multiple Values Selection
Checked: Conditionally Sets Editable
Checked: Raises For Not Applicable Keys
ここで何が起こっているかについての洞察はありますか?
解決
大丈夫、わかりました。属性名を description
から変更し、動作を開始しました。コンパイル時に名前が何かを引き起こしていたため、最初のバグチェックが失敗したようです。
所属していません StackOverflow