初期値が存在する場合、前回までのコードでは対応できない。
初期値ありへの対応
これまでのアーキテクチャではカラムの値を KVO 登録擦る必要があり、これをレコード挿入時に行っていた。ところが初期値ありの場合、レコード挿入のメソッドは呼ばれない。代わりに setContent: が呼ばれるのでこれをオーバーライドしてやる。
- (void)setContent:(id)content { [self_addObserverFor:content]; [supersetContent:content]; }
できた(画像ではわからないが)。
ソースコード
GitHubからどうぞ。
ArrayControllerUndoSample at 2011-01-02 from xcatsan/MacOSX-Sample-Code - GitHub
Responses
Leave a Response