簡體   English   中英

UISlider自定義圖像和拇指高度?

[英]UISlider custom images and thumb height?

我正在創建(或嘗試)自定義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 Height Hack嘗試增加拇指的高度,但可悲的是它使寬度變大而不是變高。 因此,我正在尋求幫助以使該區域更高而不是更寬,並且想知道為什么我的粉紅色圖像被忽略了嗎?

感謝您的任何幫助。

如果有幫助,這是我的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));
}

謝謝。

原來在加載方法導致問題的視圖中設置我的滑塊值。 我在Interface Builder中設置了它們,此問題已得到解決。 一旦在IB中設置,如果需要,我可以在代碼中對其進行調整。

至於我的其他問題,我想知道這是否是因為我沒有在實際設備上進行測試,所以我將暫停該問題,直到幾周后在設備上得到它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM