I have a simple slider app. When the slider is changed, the new value is displayed in a UILabel. That works great!

When that view is loaded though the label is blank. I want the sliderValue.text to be equal to the default slider value.

Here is my code right now (along with my previous attempt):

-(IBAction)sliderValue:(UISlider *)sender {
    sliderLabel.text = [NSString stringWithFormat:@"%g", roundf(slider.value)];
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    -(IBAction)sliderValue:(id)sender;    
}

Could someone please help me out?

Thanks!

有帮助吗?

解决方案

Just call [self sliderValue:nil]; also if you don't need sender as a in parameter to your actions you can omit them when developing for iOS.

- (IBAction)sliderValue {

}

Better yet (in my opinion) would be to set the value in viewDidLoad directly in case you add stuff later to sliderValue method. It's really two different thing one should handle logic for the slider changing value while the odder just sets the default value.

sliderLabel.text = [NSString stringWithFormat:@"%g", roundf(slider.value)];

其他提示

Use [self sliderValue:nil]; in viewDidLoad

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top