Re: @property question
Re: @property question
- Subject: Re: @property question
- From: Quincey Morris <email@hidden>
- Date: Mon, 12 May 2008 16:20:39 -0700
On May 12, 2008, at 15:19, Craig Hopson wrote:
I think I've been the victim of some side effect that I cannot track
down. With no other changes, I tried again with each style,
[ self.fieldArray addObject:inFoo ];
[ fieldArray addObject:inFoo ];
replacing all occurrences for each test, and both work - what I
would have expected.
Incidentally, neither version is KVO-compliant. If you happen to have
something (e.g. a NSArrayController) bound to the array property, to
show Foos in the user interface, the effect of addObject (and
therefore addFoo) will be to leave what's displayed out of date. This
could possibly lead to unpredictable behavior or a crash.
The KVO-compliant way to add something to an array property would be
something like this:
- (void)addFoo:( Bar* )inFoo
{
[ [self mutableArrayValueForKey:@"fieldArray"] addObject:inFoo ];
}
P.S. I just noticed that the inFoo looks like it needs to be a Foo*,
not a Bar*. I assume this was just a typo when you stripped down your
example for posting?
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden