【问题标题】:How do I place a slider value in label?如何在标签中放置滑块值?
【发布时间】:2013-10-18 17:49:43
【问题描述】:

我是 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% 确定为什么值没有更新?

期待大家的回音!

【问题讨论】:

    标签: ios xcode uilabel uislider


    【解决方案1】:

    这是一个 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];
        }
    
    }
    

    【讨论】:

    • 我注意到当我点击我的滑块时动作没有出现,但它在项目文件上出现了。所以我只是删除了我的滑块,添加了一个新的,添加了一个值更改操作,它就起作用了!
    【解决方案2】:

    这是我找出问题根源的过程。

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

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

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

    【讨论】:

    • 插座已连接。我会尽快尝试您的代码并回复您。我只是按照我在教程中看到的方式调用了 IBOutlet(除了教程通过按钮而不是滑块更改标签文本)。
    【解决方案3】:

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

    1) 您是否连接了 Slider action 值已更改为 IBAction 方法以正常运行。

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

    希望能帮到你..

    【讨论】:

    • 你是什么意思“你连接的滑块动作值已更改为 IBAction”?
    • 这意味着您是否已将 -(IBAction)sliderValue:(id)sender 连接到值更改或未更改?
    • 感谢您的帮助。它没有连接,我不得不移除滑块,添加另一个滑块并连接 sliderValue 操作(无论出于何种原因,上面的菜单没有显示)。我给了另一个人答案,因为他发布的项目示例有很大帮助!我很感谢你的帮助,谢谢! :D
    猜你喜欢
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多