1

変更のたびにwill/didChangeValueForKey:メソッドを呼び出さずに、NSDocumentのisDocumentEditedプロパティの通知をバインド/取得することは可能ですか?

4

2 に答える 2

3

サブクラスをオーバーライド-updateChangeCount:して、投稿しNSNotificationたり、必要な作業を実行したりします。

于 2010-08-07T09:14:58.587 に答える
1

マイク・アブドラの答えを拡張します:

バインディングを で動作させるために、メソッドisDocumentEditedに次のオーバーライドを実装しました。NSDocument

- (void)updateChangeCount:(NSDocumentChangeType)change
{
    [self willChangeValueForKey:@"isDocumentEdited"];
    [super updateChangeCount:change];
    [self didChangeValueForKey:@"isDocumentEdited"];
}
- (void)updateChangeCountWithToken:(id)changeCountToken forSaveOperation:(NSSaveOperationType)saveOperation
{
    [self willChangeValueForKey:@"isDocumentEdited"];
    [super updateChangeCountWithToken:changeCountToken forSaveOperation:saveOperation];
    [self didChangeValueForKey:@"isDocumentEdited"];
}
于 2013-04-01T11:22:12.343 に答える