Pregunta

El valor de la UISlider muestra actualmente como un flotador. ¿Cómo muestro como un entero?

sliderCtl = [[UISlider alloc] initWithFrame:frame];
    sliderCtl.minimumValue = 1;
    sliderCtl.maximumValue = 15;
    sliderCtl.continuous = NO;
    sliderCtl.value = 1;
    [sliderCtl setShowValue:YES];
¿Fue útil?

Solución

Se puede truncar o redondear el valor del control deslizante y luego actualizarlo para dar la retroalimentación de los usuarios acerca del cambio (Al parecer, para ajustar al valor entero cuando el usuario suelta).

Otros consejos

si desea que su control deslizante para ajustar a diferentes valores enteros, podría utilizar algo como esto en su valueChanged-función:

-(IBAction)valueChanged:(UISlider*)sender {
    int discreteValue = roundl([sender value]); // Rounds float to an integer
    [sender setValue:(float)discreteValue]; // Sets your slider to this value
}

Esto se ajustará el control deslizante después de soltar el dedo a los valores como 1,2, ..., 15 en base a la distancia entre dos números. Si por ejemplo ha soltado el control deslizante en 2.4, que va a retroceda bruscamente a 2, mientras que en el 2,6 se ajustaría a 3.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top