0

Apple Master-Detail ポップアップ セルの例に似たものを実現しようとしていますが、バインディングが機能していないようです。

私のアプリでは、ユーザーがステージプレイを構築できます。のテーブルビューがありactsます。各アクトはのリストを持つことができるlinesので、アクト テーブル ビューは行の 2 番目のテーブル ビューを駆動します (したがって、アクト 1 を選択すると、そのアクトの行で行テーブル ビューが更新されます)。

このセットアップはうまく機能しているようです。

もちろん、各行はキャラクターによって話されているため、私の文書オブジェクトにはcharacters行為のリストと同様に行為のリストがあります。characters私が欲しいのは、配列から取得した値を持つ行テーブルのポップアップ セルです。

だから私はそのAppleチュートリアルの手順に従いましたが、うまくいきません...

  • contentテーブル ビューの列をCharactersController.arrangedObjectsおよびselectedObjectにバインドするとLinesController.arrangedObjects.character、バインドが機能します (ポップアップから値を選択すると、基になるlineオブジェクトが新しい文字で更新されます)、リストには<Character ...>エントリが表示されます。
  • contentValues次に列をバインドするとCharactersController.arrangedObjects.name、アプリを実行すると次のデバッグ エラーが発生します。

    2011-03-16 11:28:49.783 ScriptPreparer[5176:903] Cocoa Bindings: 
    Error setting value <Character: 0x100144f60> of object 
    <NSPopUpButtonCell: 0x100153ff0> through binding selectedObject
    
  • selectedObjectバインディングを削除しても<Character...>、リストに出力が表示されます。

contentValuesバインディングが壊れているようです。私は何を間違っていますか?

ここに私のバインディングがあります: ここに画像の説明を入力

4

1 に答える 1

1

私は問題が何であるかを発見しました -NSTableViewテーブル列と同様にバインドが設定されていて、NSPopupButtonCellそれが奇妙なことを引き起こしていました。

私の結論は、テーブル列にないテーブルバインディングはすべて間違っているということです

于 2011-03-21T08:48:26.783 に答える