首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >UISlider视图问题

UISlider视图问题
EN

Stack Overflow用户
提问于 2011-04-27 22:45:58
回答 2查看 856关注 0票数 0

我正在尝试制作一个UISlider/滑块,但我不知道为什么它会出现问题。下面是代码片段:

.h =

代码语言:javascript
复制
@interface sliderViewController : UIViewController {

    IBOutlet UISlider *mySlider;

}

@property (nonatomic) float Value;
@property (nonatomic) float minimumValue;
@property (nonatomic) float maximumValue;
@property (nonatomic, getter=isContinuous) BOOL continuous;

@end

.m =

代码语言:javascript
复制
@implementation sliderViewController
@synthesize minimumValue;
@synthesize maximumValue;
@synthesize Value;
@synthesize continuous;
    CGRect rect = CGRectMake(10, 60, 200, 30);
    mySlider = [[UISlider alloc] initWithFrame:rect];
    [mySlider addTarget:self 
                 action:@selector(sliderValueChanges) 
       forControlEvents:UIControlEventValueChanged];
    mySlider.backgroundColor = [UIColor clearColor];
    mySlider.minimumValue = 0.0;
    mySlider.maximumValue = 10.0;
    mySlider.continuous = YES;
    mySlider.value = 5.0;
    [theView addSubview: mySlider];

}

- (void)sliderValueChanges:(id)sender{
    UISlider *slider = sender;
    if (mySlider==slider) {
        printf("Value of slider is %f\n", [mySlider value]);
    }
}
@end
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-27 23:33:07

UISlider对象定义为IBOutlet意味着您将通过interface Builder将该ivar连接到接口中的UISlider。是你干的吗?如果不是,这就解释了为什么在UI中更改滑块值实际上不会做任何事情。

此外,当您在接口生成器中将IBOutlet ivar连接到匹配的UI元素时,则不需要在您的代码中创建对象。它已经通过在您的NIB文件中定义而被“创建”了。

票数 1
EN

Stack Overflow用户

发布于 2012-07-30 00:17:51

问题出在调用此方法(sliderValueChanges)的方式上。而不是这样命名,请这样命名(sliderValueChanges:).It工作很好!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5805979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档