1

我对 Xcode 很陌生,当滑块的值发生更改时,我无法将滑块的值放在标签中。

这是我的代码: 头文件:

@interface ViewTwoViewController : UIViewController
{
    IBOutlet UISlider *slider;
    IBOutlet UILabel *sliderLabel;
}

-(IBAction)sliderValue:(id)sender;

这是我的 m 文件:

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

我不是 100% 确定为什么值没有更新?

我期待着大家的回音!

4

3 回答 3

2

这是一个 XCode 项目,可以满足您的需求:http ://clrk.it/013r203C1y1F

注意:

  1. 标签和滑块连接到UIViewController故事板中的 IBOutlets。
  2. 滑块的valueChanged: 方法链接到UIViewController情节提要中的 。
  3. 滑块的值使用 显示%f

你的方法看起来像这样:

-(IBAction)sliderValueChanged:(id)sender
{
    if (sender == _slider) {
        _label.text = [NSString stringWithFormat:@"%0.3f", _slider.value];
    }

}
于 2013-10-18T18:38:10.717 回答
1

这将是我找出这个问题的根本原因的过程。

  1. 你记得连接slidersliderLabel插座吗?
  2. 您还记得将 IBAction 连接到滑块吗?设置断点。当您拖动滑块时,sliderValue:会调用吗?slider和的值是sliderLabel多少?
  3. IBOutlet您的 s 不是属性,这很不寻常。我希望看到:

@property (weak, nonatomic) IBOutlet UISlider *slider;

@property (weak, nonatomic) IBOutlet UILabel *sliderLabel;

于 2013-10-18T18:13:38.470 回答
1

我试过你的代码,似乎是正确的..请检查这些事情:-

1)您是否连接了滑块动作值已更改为 IBAction 方法以正常运行。

2) 检查我们与奥特莱斯的联系。

希望能帮到你。。

于 2013-10-18T18:28:34.437 回答