1

配列コントローラーでバインドされたテーブルビューがあります。テーブルビューには2つの列があり、1つは文字列で、もう1つはBOOLです。テーブルビューで文字列値を取得しています。NSButtonCellでBOOL値を表示するために、問題が発生しています。ボタンセルは値が「NO」の場合は選択され、値が「YES」の場合は選択されません。バインディングのBOOL列に「NSNegateBoolean」として値トランスフォーマーを指定しました。この問題は「NSNegateBoolean」を指定したことが原因です。ただし、正確な値を取得するための「NSBoolean」のようなオプションはありません。 plzは私にやることを案内します。このアプリはiPhoneではなくココアにあります。

前もって感謝します。

4

2 に答える 2

0

トランスフォーマーが行うことNSNegateBooleanは、バインドされた値をインターフェイスに反映する前に反転することだけであり、もちろんオプションです。値を否定する必要がない場合は、トランスを使用しないでください。したがって、削除するNSNegateBooleanと、準備完了です。

于 2013-02-22T10:08:21.243 に答える
0

BOOL 値を NSArray に直接バインドできなかったということですか?

NSNumber NSCFBoolean を試していただけますか?

@(YES) or @(NO).

また

BOOL boolValue = YES;
@(boolValue)

そのような

NSDictionary *row1 = @{@"title":@"row1",@"value":@(YES)};
NSDictionary *row2 = @{@"title":@"row2",@"value":@(NO)};
NSArray *tableContentArray = @[row1,row2];

tableContentArray は、ArrayController にバインドするものです。

于 2013-02-22T06:31:04.147 に答える