2012-07-05 26 views

Respuesta

16

Para ajustar la imagen a su deslizador puede utilizar el setMinimumTrackImage, setMaximumTrackImage métodos. Para su requisito establecer ambos en la misma imagen.

iOS 5 y A continuación

UIImage *sliderTrackImage = [[UIImage imageNamed: @"Slider.png"] stretchableImageWithLeftCapWidth: 7 topCapHeight: 0]; 

[mySlider setMinimumTrackImage: sliderTrackImage forState: UIControlStateNormal]; 
[mySlider setMaximumTrackImage: sliderTrackImage forState: UIControlStateNormal]; 

iOS 5+

UIImage *sliderTrackImage = [[UIImage imageNamed:@"Slider.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 7, 0, 0)]; 

[mySlider setMinimumTrackImage: sliderTrackImage forState: UIControlStateNormal]; 
[mySlider setMaximumTrackImage: sliderTrackImage forState: UIControlStateNormal]; 

Para más favor comprobar estos enlaces:

  1. User Interface Customisation Tutorial
  2. http://jasonlawton.com/blog/customizing-uislider-in-iphone/
  3. Custom UISlider
  4. Slider image
+0

Gracias. Esto funciona. No necesitaba que fuera extensible, así que usé imageNamed. – soleil

+0

gracias por su comentario :) –

+1

'stretchableImageWithLeftCapWidth: topCapHeight:' está en desuso. Reemplácelo con 'resizeImageWithCapInsets: UIEdgeInsetsMake (0, 7, 0, 7) resizingMode: UIImageResizingModeStretch'. –

0

Simplemente configure ambos lados para la misma imagen. Es posible que desee hacer dos imágenes separadas con el mismo color/patrón si desea las esquinas redondeadas en los extremos.

4
[[UISlider appearance] setThumbImage:[UIImage imageNamed:@"ball.png"] forState:UIControlStateNormal]; 
[slider setMinimumTrackImage:[[UIImage imageNamed:@"volume_slider_oragne.png"] stretchableImageWithLeftCapWidth:0.3 topCapHeight:0.0] forState:UIControlStateNormal]; 
[slider setMaximumTrackImage:[[UIImage imageNamed:@"volume_strap_gry.png"] stretchableImageWithLeftCapWidth:0.3 topCapHeight:0.0] forState:UIControlStateNormal]; 
+2

[[UISlider appearance] setThumbImage: [UIImage imageNamed: @ "ball.png"] forState: UIControlStateHighlighted]; para evitar que el pulgar regrese a su imagen original mientras se desliza. –