自定义UISlider无法正常工作

时间:2012-03-25 17:43:27

标签: iphone uislider

我的应用中有Slider,它连接了一些方法。在我的viewDidLoad中,我正在设置一个自定义的拇指和图像,两者都不会出现。没有错误或警告,只是滑块似乎没有连接到我的代码,即使我在.xib中建立了连接 我正在获取NSLog打印输出,所以我知道正在调用viewDidLoad方法。

- (void)viewDidLoad {
    [super viewDidLoad];

    // initialize custom UISlider (you have to do this in viewdidload or applicationdidfinishlaunching.
    UIImage *stetchLeftTrack= [[UIImage imageNamed:@"Nothing"]
                               stretchableImageWithLeftCapWidth:30.0 topCapHeight:0.0];
    UIImage *stetchRightTrack= [[UIImage imageNamed:@"Nothing"]
                                stretchableImageWithLeftCapWidth:30.0 topCapHeight:0.0];
    [slideToUnlock setThumbImage: [UIImage imageNamed:@"SlideToStop"] forState:UIControlStateNormal];
    [slideToUnlock setMinimumTrackImage:stetchLeftTrack forState:UIControlStateNormal];
    [slideToUnlock setMaximumTrackImage:stetchRightTrack forState:UIControlStateNormal];
    NSLog(@"WATERMELON");
}

2 个答案:

答案 0 :(得分:0)

如果slideToUnlock为null,则需要:

  • 检查您的@property和@synthesize语句
  • 检查所有内容是否已连接到您的xib

我还建议使用slideToUnlock的访问器,即[self slideToUnlock],而不是直接访问变量。

如果您不使用ARC,那么@property和@synthesize将如下所示:

@property (nonatomic, retain) IBOutlet UISlider* slideToUnlock;
@synthesize slideToUnlock = _slideToUnlock; // make the ivar _slideToUnlock to distinguish it from the property

如果您正在使用ARC(我不是我自己),那么this question会提供指导:

答案 1 :(得分:0)

使用触摸式打孔机: -

<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script src="http://code.jquery.com/ui/1.8.21/jquery-ui.min.js"></script>
<script src="jquery.ui.touch-punch.min.js"></script>


<script>$('#widget').draggable();</script>

尽量避免多个js。它可能会在safari上产生问题 你可以从http://touchpunch.furf.com/

获得触动