对齐UISlider拇指图像 - objective-c

时间:2012-02-24 19:45:27

标签: iphone objective-c ios uislider

我已经定制了我的UISlider,但我的拇指图像看起来很奇怪,我的意思是它的位置没有按照中心对齐:

enter image description here

但应该是这样的:

enter image description here

这是代码:

UIImage *leftTrack = [[UIImage imageNamed:@"blueTrack.png"] stretchableImageWithLeftCapWidth:3 topCapHeight:0];
UIImage *rightTrack = [[UIImage imageNamed:@"whiteTrack.png"] stretchableImageWithLeftCapWidth:3 topCapHeight:0];
[slider setThumbImage:[UIImage imageNamed:@"thumbButton.png"] forState:UIControlStateNormal];
[slider setMinimumTrackImage:leftTrack forState:UIControlStateNormal];
[slider setMaximumTrackImage:rightTrack forState:UIControlStateNormal];

哪里可能是问题?

修改 我找到了这个问题的解决方案。拇指图像背景是透明的,我没有看到拇指图像没有按中心对齐:

enter image description here

1 个答案:

答案 0 :(得分:5)

有两种方法:

第一个是使用

- (CGRect)trackRectForBounds:(CGRect)bounds;

- (CGRect)thumbRectForBounds:(CGRect)bounds trackRect:(CGRect)rect value:(float)value;

方法UISlider当子类化按照你想要的方式布局时

第二种方法是调整你的作品:

enter image description here