On Apr 28, 2008, at 11:32, Robert Cerny wrote:

Actually,
it's not getting called at all. Is it because my method is defined in category? As I wrote already, I'm able to call my methods from gdb so my category is up and running

NSLog(@"%@", [[[ppl arrangedObjects] objectAtIndex:0] lastName]);

as opposed to
Value (ABPeople.arrangedObjects.lastName)

Because the view uses a binding, it's actually going to call 'valueForKeyPath:@"lastName"', isn't it? Normally, you'd expect that to end up at your 'lastName' method via [NSObject valueForKey:], but since it isn't getting to your custom accessor, you know that 'valueForKey:@"lastName"' is itself returning nil or an empty string.

This suggests to me that ABRecord (the superclass of ABPerson, the documentation says) may override valueForKey: with new behavior that doesn't call custom accessors or return anything useful. If that's so, I can only speculate that it's to prevent you using valueForKey when you're "supposed" to use valueForProperty instead.

Does that sound plausible?


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to