kartal
kartal

Reputation: 18086

Assign method to UISlider programmatically using Objective-C

I add UISlider to view programmatically like this:

UISlider * sideslider = [[UISlider alloc] initWithFrame:CGRectMake(canvasWidth +((canvasWidth) - (recwidth) / 4) /b2, recheight - 70, (recwidth) / 4, 20)];
[sideslider setMaximumValue:solution0->Plan->HDivisions.count];
// sideslider 
int slidervalue = sideslider.value;
[self addSubview:sideslider];

I need to add this event handler

-(IBAction)updateside:(UISlider *)sender;

to this slider after creating it ?

Upvotes: 3

Views: 3342

Answers (2)

WrightsCS
WrightsCS

Reputation: 50707

You need to assign:

[sideslider addTarget:self action:@selector(updateside:) forControlEvents:UIControlEventValueChanged];

To figure out the value of the sender (sideslider):

-(IBAction)updateside:(id)sender
{
    UISlider * slider = (UISlider*)sender;
    NSLog(@"Slider Value: %.1f", [slider value]);
}

Upvotes: 4

user529758
user529758

Reputation:

[slider addTarget:self action:@selector(updateside:) forControlEvents:UIControlEventValueChanged];

Upvotes: 8

Related Questions