Domanda

Il valore del UISlider Attualmente sono mostrati come un galleggiante. Come posso mostrare come un intero?

sliderCtl = [[UISlider alloc] initWithFrame:frame];
    sliderCtl.minimumValue = 1;
    sliderCtl.maximumValue = 15;
    sliderCtl.continuous = NO;
    sliderCtl.value = 1;
    [sliderCtl setShowValue:YES];
È stato utile?

Soluzione

Si potrebbe troncare o intorno al valore dal cursore e poi aggiornarlo a dare il feedback degli utenti circa il cambiamento (sembrerebbe per scattare al valore intero quando l'utente rilascia).

Altri suggerimenti

se si desidera che il dispositivo di scorrimento per scattare a diversi valori interi, si potrebbe usare qualcosa di simile nel tuo valueChanged funzione:

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

In questo modo far scattare il dispositivo di scorrimento dopo aver rilasciato il dito per valori come 1,2, ..., 15 in base alla distanza tra due numeri. Se per esempio avete rilasciato il cursore a 2.4, sarà scattare di nuovo a 2, mentre a 2,6 sarebbe snap 3.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top