如何在 viewDidLoad 中调用 IBAction?
Posted
技术标签:
【中文标题】如何在 viewDidLoad 中调用 IBAction?【英文标题】:How can I call an IBAction in the viewDidLoad? 【发布时间】:2013-10-18 19:24:47 【问题描述】:我有一个简单的滑块应用程序。更改滑块时,新值将显示在 UILabel 中。效果很好!
当该视图被加载时,虽然标签是空白的。我希望sliderValue.text
等于默认滑块值。
这是我现在的代码(以及我之前的尝试):
-(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;
有人可以帮帮我吗?
谢谢!
【问题讨论】:
【参考方案1】:如果您不需要 sender
作为操作的 in 参数,也只需调用 [self sliderValue:nil];
,您可以在为 ios 开发时省略它们。
- (IBAction)sliderValue
更好(在我看来)是直接在viewDidLoad
中设置值,以防您稍后将内容添加到sliderValue 方法。这确实是两件不同的事情,一个应该处理滑块更改值的逻辑,而奇怪的只是设置默认值。
sliderLabel.text = [NSString stringWithFormat:@"%g", roundf(slider.value)];
【讨论】:
我明白了,我没想到!代码中的小错误。您使用了 ;在代码的第一位;)【参考方案2】:在 viewDidLoad 中使用 [self sliderValue:nil];
【讨论】:
以上是关于如何在 viewDidLoad 中调用 IBAction?的主要内容,如果未能解决你的问题,请参考以下文章
如何使 SwrevealViewController 的 viewDidLoad 只调用一次
如何在 [self dismissModalViewControllerAnimated:YES] 之后调用 viewDidLoad;