you need to override automaticallyNotifiesObserversForKey: to return
NO for @"selectedIndex"
see:
http://developer.apple.com/library/ios/#documentation/cocoa/conceptual/KeyValueObserving/Articles/KVOCompliance.html
if you observe an object, the runtime automatically generates the
willChange/didChange unless you override this method to return NO.
basically you're sending extra willChange/didChange calls here as it is.
-aaron
At 6:28 PM -0700 4/9/12, Rick Mann wrote:
I'm observing a property of one of my classes, "selectedIndex". Even
if the value is set to the same value, KVO fires and my observe
method gets called, which is something I thought by default it
doesn't do.
So I implemented a custom setter for my property, like this:
- (void)
setSelectedIndex: (NSUInteger) inIndex
{
if (mSelectedIndex == inIndex)
{
return;
}
[self willChangeValueForKey: @"selectedIndex"];
mSelectedIndex = inIndex;
[self didChangeValueForKey: @"selectedIndex"];
}
Sure enough, my method returns early, but KVO still gets called.
What am I misunderstanding?
Thanks,
Rick
_______________________________________________
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:
https://lists.apple.com/mailman/options/cocoa-dev/mandelbaum%40olywa.net
This email sent to mandelb...@olywa.net
_______________________________________________
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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to arch...@mail-archive.com