gpt4 book ai didi

iphone - Objective C/iPhone - 如何将 UISlider 绑定(bind)到代码

转载 作者:行者123 更新时间:2023-12-03 20:25:35 25 4
gpt4 key购买 nike

我刚刚开始使用 Objective C,但我已经遇到了一个问题:当我过去这样做时,我没有遇到任何问题:我制作了一个新的 UISlider,单击它,按住 CTRL 键将一条蓝线拖到代码中,然后不知何故我能够读取它的值。

但是,我现在遇到了无法再画这些线的问题。通过乱搞,我设法让按钮正常工作,但 slider 不起作用。我的 Mainwindow.xib 有 iSaturateViewController 类,iSaturateViewController.xib 中包含了整个界面。

如何在无法绘制该线的情况下使 UISlider 正常工作?

我现在如何拥有它:(在 iSaturateViewController.h 中)

#import <UIKit/UIKit.h>

@interface iSaturateViewController : UIViewController {
UISlider * satSlider;
UILabel * satLabel;
}

@property (nonatomic, retain) IBOutlet UISlider * satSlider;
@property (nonatomic, retain) UILabel * satLabel;

-(IBAction) changeSaturation:(id) sender;

@end

(在 iSaturateViewController.m 中):

@synthesize satLabel,satSlider;

-(IBAction) changeSaturation:(id)sender {
satLabel.text = [[NSString alloc] initWithFormat:@"Saturation: %d ", (Float32)satSlider.value];
NSLog(@"%f", satSlider.value);
}

此时 NSLog 显示:0.00000000

此外,我已将 Identity 属性中的 Label 设置为:satSlider( slider )和 satLabel(标签)。

只是为了澄清我的目标:

我希望通过函数changeSaturation 在 UILabel (satLabel) 中显示 slider (satSlider) 值。

我该怎么做?

最佳答案

添加方法声明:

-(IBAction) changeSaturation:(id)sender;

到头文件iSaturateViewController.h

然后,将 UISlider 的“Value Changed”操作分配给您的“changeSaturation”方法。右键单击 slider 并将值更改拖动到文件所有者并连接它们。它应该可以工作。

您也可以尝试这个:

-(IBAction)changeSaturation:(id)sender {

UISlider *slider = (UISlider *)sender;
satLabel.text = [NSString stringWithFormat:@"Saturation: %f", slider.value];
NSLog(@"Saturation: %f", slider.value);
}

关于 UILabel - 添加 IBOutlet 并在 Interface Builder 中连接它。界面应该是这样的:

#import <UIKit/UIKit.h>

@interface iSaturateViewController : UIViewController {
IBOutlet UISlider * satSlider;
IBOutlet UILabel * satLabel;
}

@property (nonatomic, retain) IBOutlet UISlider * satSlider;
@property (nonatomic, retain) IBOutlet UILabel * satLabel;

-(IBAction) changeSaturation:(id) sender;

@end

让我知道它是否有效。

关于iphone - Objective C/iPhone - 如何将 UISlider 绑定(bind)到代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8480598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com