2012-02-24 1 views
8

я настроить мой UISlider, но мой большой палец изображение выглядит странно, я имею в виду, что это положение не выровнен по центру:Align UISlider палец изображение - Objective-C

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]; 

Где может быть проблема?

EDIT: Я нашел решение этой проблемы. фон Thumb изображение было прозрачным, и я не видел, что большой палец изображение не выровнен по центру:

enter image description here

+0

Ваш растянуть изображение не точно так высоко, как внутренняя реализация UISlider требует его быть. Попытайтесь сделать его менее высоким. –

+0

Не могли бы вы показать мне, как? –

+1

Хорошо использовать GIMP, Photoshop, Paint.net ... :) –

ответ

4

Есть два способа:

Елки один заключается в использовании

- (CGRect)trackRectForBounds:(CGRect)bounds;

или

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

методы UISlider когда подклассов выложить большой палец так, как вы хотите

Второй способ настроить обложку:

enter image description here