2009-05-27 12 views
0

私はアプリケーションを作成していると私はそれを実行したとき、私は、デバッグウィンドウを確認し、私はコンソールの中にこれらのエラーを取得しています:XCodeでデバッグするときにコンソールでこれらのエラーが表示されるのはなぜですか?

2009-05-27 07:18:03.852スパーク[1228:10B] [valueForUndefinedKey :]:エンティティプロジェクトは、キーノートに対してキー値コーディングに準拠していません。

2009-05-27 07:18:09.029スパーク[1228:10B] [:プロジェクトエンティティ](バインドされたオブジェクトからオブジェクトID 726を有するペン先と命名MainMenu.nibを内のオブジェクトのキーパスselectionIndexPathsのエラー設定値):[valueForUndefinedKey:]:エンティティプロジェクトはキーノートに対してキー値コーディングに準拠していません。

NSTreeControllerの選択とController Key 'Notes'にテキストフィールドの値をバインドした場合にのみ発生します。また、アプリケーションのテキストフィールドを編集しようとすると、アウトラインビューがフリーズします上記のエラーがコンソールに表示されます)。私はこの問題を解決することができますどのように私はここにテキストフィールドのバインディングの絵で、正しくテキストフィールドをバインドされていない:http://snapplr.com/840y

エンティティ・ダイアグラムが

http://snapplr.com/vqc9

NEWエラー

**2009-05-27 18:37:41.661 Spark[3957:10b] Unacceptable type of value for attribute: property = "notes"; desired type = NSString; given type = NSConcreteAttributedString; value = Alpha Nine Zeta{ 
    NSColor = NSNamedColorSpace System textColor; 
    NSFont = "MarkerFelt-Thin 16.00 pt. P [] (0x001a7190) fobj=0x00146ef0, spc=4.00"; 
    NSOriginalFont = "MarkerFelt-Thin 16.00 pt. P [] (0x001a7190) fobj=0x00146ef0, spc=4.00"; 
    NSParagraphStyle = Alignment 3, LineSpacing 0, ParagraphSpacing 0, ParagraphSpacingBefore 0, HeadIndent 0, TailIndent 0, FirstLineHeadIndent 0, LineHeight 0/0, LineHeightMultiple 0, LineBreakMode 0, Tabs (
    28L, 
    56L, 
    84L, 
    112L, 
    140L, 
    168L, 
    196L, 
    224L, 
    252L, 
    280L, 
    308L, 
    336L 
), DefaultTabInterval 0, Blocks (null), Lists (null), BaseWritingDirection -1, HyphenationFactor 0, TighteningFactor 0.05, HeaderLevel 0; 
}.** 
+0

プロジェクトのコードまたはエンティティダイアグラムを投稿してください。それは、メッセージに問題があると言います。 – Abizern

+0

エンティティダイアグラムを追加しました。 – Joshua

答えて

1

プロジェクトがアウトラインビューで選択されている場合、テキストフィールドは、 eは 'treecontroller項目を選択しました。これはプロジェクトです。 Projectsエンティティにはnotes属性がないため、KVOは例外をスローします。

テキストフィールドの「値」バインドで、バインドオプション「Not Applicable Keysに上げる」を選択解除します。

+0

問題の一部が修正されましたが、アウトラインビューフリーズが選択されたときにテキストフィールドのテキストを変更するとコンソールからこのエラーが表示されます。 [エラーの最初の投稿の編集を参照してください] – Joshua

+0

cocoafan:エラーは隠れていました。間違ったエンティティにバインドされています。 –

+0

Peter Hosey:私は彼がタスクのフォルダとして機能するツリーのトップレベルにすべてのプロジェクトを表示したいと思います。NSTreeControllerには、ProjectsとTasksの両方を含めることができます。 – cocoafan

0

2番目のエラー:テキストフィールドの属性で

は、あなたが選択したリッチテキストオプションを持っているのですか?これはNSStringを期待するNotesプロパティにNSAttributedStringを送信しているようです。

このオプションがオフになっている場合は、このオプションをオフにします。

+0

はい、ありがとうございました!残念ながら私は2つの答えをチェックすることはできません、彼はポイントが少なく、最初に答えたので、私はココアパンの答えをチェックしてもいいですか? – Joshua

+0

喜んで助けてください。 – Abizern

1

あなたはプロジェクトのメモにテキストフィールドをバインドしましたが、モデルではTasksesのみメモがあります。 Projectsesがメモを持つことを意図していた場合は、そのプロパティをProjectsエンティティに追加する必要があります。 Tasksesにバインドする場合は、おそらくchildren.notesにモデルキーパスを変更する必要があります。

(関連:これらのエンティティ名が実際に単数形でなければなりません。)

新しいエラーについて:テキストフィールドはスタイル、テキスト、プレーンテキストのみを表示することはできません。代わりにテキストビューを作成します。

+0

申し訳ありません、AbizernとCocoafanあなたにそれを打つ。 – Joshua

+1

正確ではありません。彼らは正しく問題を特定しましたが、さまざまな解決策を示しました(そして、ココアパンは問題を隠していたものの、それを解決しなかったので間違っていました)。 –

関連する問題