Re: KVO on NSSlider not observing
Re: KVO on NSSlider not observing
- Subject: Re: KVO on NSSlider not observing
- From: Graham Cox <email@hidden>
- Date: Sat, 13 Dec 2008 00:12:10 +1100
On 12 Dec 2008, at 11:36 pm, Aaron Wallis wrote:
Hi there,
I'm having issues setting up bindings via code (rather than in IB)
I've got a NSObject subclass which is being used as the controller,
and a NSView subclass which has a few controls like NSSliders.
In the NSObject I have the following code:
- (void)setupSliders {
[controlsView.tempSlider addObserver:self forKeyPath:@"value"
options:NSKeyValueObservingOptionNew context:NULL];
}
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:
(id)object change:(NSDictionary *)change context:(void *)context {
NSLog(@"It's Changed!!");
[super observeValueForKeyPath:keyPath ofObject:object
change:change context:context];
}
When I build and run the controls are rendered as expected however
when I interact I don't get the "It's changed" message.
Any ideas where I could be going wrong?
If you're setting it up in code I wouldn't bother with KVO - just use
classic target/action (making sure the slider is set to 'continuous').
KVO isn't really designed to observe changes from a control - usually
it's used the other way around to set a control when a data model
value changes. The classic approach is really much easier.
--Graham
_______________________________________________
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