自定义UISlider不起作用
问题描述:
我在我的应用程序中连接了几个方法的Slider。在我的viewDidLoad中,我设置了一个自定义的拇指和图像,两者都没有出现。没有错误或警告,只是滑块似乎没有连接到我的代码,即使我在.xib中创建了连接,但我得到了NSLog打印输出,所以我知道正在调用viewDidLoad方法。自定义UISlider不起作用
- (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");
}
答
如果slideToUnlock为null,则您需要:
- 检查@property和@synthesize声明
- 检查一切都连接好到您的厦门国际银行
我d还建议使用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提供指导:
+0
啊。问题是我指的是slideToUnlock而不是_slideToUnlock,因为我设置了@synthesize slideToUnlock = _slideToUnlock; – Alex 2012-03-25 23:43:16
答
使用触摸打孔: -
<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/
取得联系冲什么的NSLog(@“slideToUnlock:%@”,slideToUnlock),如果你把它放在你的NSLog(@“西瓜”)得出?我问,因为这里的第一件事是消除它是零的可能性。如果不是零,还要检查你正在加载的图像不是零。 – Obliquely 2012-03-25 18:32:13
原来它是空的。我该如何防止这种情况? – Alex 2012-03-25 18:55:39