iphone - uistepper
Ocultar la imagen del pulgar de UISlider (5)
Mucho más simple:
Objc
[sli setThumbImage:[[[UIImage alloc] init] autorelease] forState:UIControlStateNormal];
Versión rápida
sli.setThumbImage(UIImage(), for: .normal)
Estoy tratando de crear un UISlider sin la imagen del pulgar.
Cómo puedo hacer esto, este es mi código hasta ahora:
UISlider *sli = [[UISlider alloc] initWithFrame:progressView.frame];
[sli setThumbImage:nil forState:UIControlStateNormal];
[sli setBackgroundColor:[UIColor clearColor]];
[sli setMinimumTrackImage:[[UIImage imageNamed:@"ProgressBlueCap.png"] stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0] forState:UIControlStateNormal];
[sli setMaximumTrackImage:[[UIImage imageNamed:@"ProgressBlueCapRight.png"] stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0] forState:UIControlStateNormal];
Este es un hilo viejo, pero lo encontré para que alguien más también pueda hacerlo.
Aquí hay una solución a esto en Swift. Aquí estoy creando un UIImage en blanco programáticamente y luego lo asigno al pulgar.
var rect = CGRectMake(0,0,1,1)
UIGraphicsBeginImageContextWithOptions(CGSizeMake(1,1), false, 0)
UIColor.clearColor().setFill()
UIRectFill(rect)
var blankImg: UIImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
sli.setThumbImage(blankImg, forState: .Normal)
Intentaría subclasificar UISlider
y anular -thumbRectForBounds:trackRect:value:
para devolver NSZeroRect. Si eso no lo hace, intente anular -thumbImageForState:
para devolver nil.
Una solución de línea:
[_slider setThumbImage:[UIImage new] forState:UIControlStateNormal];