如果我没有清楚地问这个问题,我很抱歉...我对XCode很新。会尽我所能。
我正在创建一个具有三个值1,2和3的自定义UISlider。我已经看到了有关如何使用以下内容将UISlider发送到某个位置的帖子:
[mySlider setValue:2 animated:YES];
我的问题是,我如何在UISlider的自定义类中执行此操作?我试过了:
[self setValue:3 animated:YES];
但是这在自定义类文件中不起作用。任何人都可以告诉我我可能做错了什么。
我基本上在自定义类中的 endTrackingWithTouch 中使用if语句,以便在触摸时查看滑块的值,并将其发送到最左侧中心或最右侧位置
如果我没有提供足够的细节,或者我要道歉,我道歉。
谢谢!
答案 0 :(得分:1)
您使用的是自定义类吗?那么你有没有将IB中的滑块设置为自定义类?
还要确保该属性设置为自定义滑块
@property (weak, nonatomic) IBOutlet MySliderClass *MySlider;
然后在你的自定义滑块类中,这将起作用
self.value = 1;
这是自定义滑块类
#import "MySliderClass.h"
@implementation MySliderClass
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
//[self setTheSlider];
// these both work
//self.value = 1;
}
return self;
}
- (void) setTheSlider
{
self.value = 1;
}
@end
要从类外部设置滑块是您需要的,请将其添加到头文件
- (void) setTheSlider;
然后从你的viewController执行此操作
[self.MySlider setTheSlider];