Reputation: 529
I am using segmentedControl in iphone application i want that when
with YES and NO
I have also one lable i want that when YES is selected lable should display YES other wise
but its not changing with my code
-(IBAction)segmentedControlIndexChanged{
switch (self.segmentedControl.selectedSegmentIndex) {
case 0:
self.segmentLabel.text =@"YES";
break;
case 1:
self.segmentLabel.text =@"NO";
break;
default:
break;
}
}
Upvotes: 0
Views: 3551
Reputation: 4789
Look at the image and as per that do proper wiring (select Value changed option).
-(IBAction)valueChanged:(id)sender
{
if (self.segmentedControl.selectedSegmentIndex == 0) {
[self.segmentedControll setTitle:@"YES" forSegmentAtIndex:self.segmentedControl.selectedSegmentIndex]
}
else if (self.segmentedControl.selectedSegmentIndex == 1) {
[self.segmentedControll setTitle:@"NO" forSegmentAtIndex:self.segmentedControl.selectedSegmentIndex]
}
}
Upvotes: 1
Reputation: 1439
Very simple use setTitle:forSegmentAtIndex:
So the code should looks like
NSString *str;
switch (self.segmentedControl.selectedSegmentIndex) {
case 0: {
str = @"YES";
break;
}
case 1: {
str = @"NO";
break;
}
default:
break;
[self.segmentedControll setTitle:str forSegmentAtIndex:self.segmentedControl.selectedSegmentIndex]
or simpler version
if (self.segmentedControl.selectedSegmentIndex == 0) {
[self.segmentedControll setTitle:@"YES" forSegmentAtIndex:self.segmentedControl.selectedSegmentIndex]
}
else if (self.segmentedControl.selectedSegmentIndex == 1) {
[self.segmentedControll setTitle:@"NO" forSegmentAtIndex:self.segmentedControl.selectedSegmentIndex]
}
Upvotes: 2