UISlider自定义图像和拇指的高度?(UISlider custom images and th

2019-09-16 17:41发布

我创建(或尝试)的自定义UISlider看,还是水平却高得多。 我有两个问题。

1,本是我使用来获取图像到滑块上的代码。

UIImage *minImage = [UIImage imageNamed:@"sliderMin.png"];
UIImage *maxImage = [UIImage imageNamed:@"sliderMax.png"];
UIImage *thumbImage = [UIImage imageNamed:@"sliderThumb.png"];

minImage = [minImage stretchableImageWithLeftCapWidth:33.0 topCapHeight:0.0];
maxImage = [maxImage stretchableImageWithLeftCapWidth:33.0 topCapHeight:0.0];
// thumbImage = [minImage stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0];

[_contrastSlider setMinimumTrackImage:minImage forState:UIControlStateNormal];
[_contrastSlider setMaximumTrackImage:maxImage forState:UIControlStateNormal];
[_contrastSlider setThumbImage:thumbImage forState:UIControlStateNormal];

minImage = nil;
maxImage = nil;
thumbImage = nil;

[_contrastSlider setMinimumValue:0.0];
[_contrastSlider setMaximumValue:100.00];
[_contrastSlider setValue:25.0];

我有三个图像,最小,最大和拇指。 这些图像和他们如何看的设备,这是不正确的。

我不能发表图片呢,所以这里是一个链接MYSlider.jpeg足见其分量。

滑块应霜拇指的权利,粉红色到左边。 但是,这没有发生。

这就是问题1.问题2是拇指大小默认太小。 我使用的是这样的: UISlider高度哈克尝试增加拇指的高度,但可悲的是它使得它更广泛的不高。 所以我要求帮助,以使该地区高,不宽,不知道为什么我的粉红色的图像被忽略?

感谢您的任何帮助。

如果有帮助,这是我的UISlider子.M:

-(BOOL) pointInside:(CGPoint)point withEvent:(UIEvent*)event {
CGRect bounds = self.bounds;
bounds = CGRectInset(bounds, -10, -8);
return CGRectContainsPoint(bounds, point);

}

-(BOOL) beginTrackingWithTouch:(UITouch *)touch withEvent:(UIEvent *)event {
  CGRect bounds = self.bounds;
  float thumbPercent = (self.value - self.minimumValue) / (self.maximumValue - self.minimumValue);
  float thumbPos = THUMB_SIZE + (thumbPercent * (bounds.size.width - (2 * THUMB_SIZE)));
  CGPoint touchPoint = [touch locationInView:self];
  return (touchPoint.x >= (thumbPos - EFFECTIVE_THUMB_SIZE) && touchPoint.x <= (thumbPos + EFFECTIVE_THUMB_SIZE));
}

谢谢。

Answer 1:

原来设定的意见我滑块值做负载法造成的问题。 我将它们设置在Interface Builder和固定。 一旦IB设置我可以在代码中调整它们如果需要的话,没有任何问题。

至于我的其他问题,我想知道这是否是因为我不是一个实际的设备上进行测试,所以我打算暂停这个问题,直到我得到它的设备上几个星期。



文章来源: UISlider custom images and thumb height?