Как показать значение UISlider в виде целого числа - PullRequest
12 голосов
/ 02 декабря 2009

Значение UISlider в настоящее время отображается как число с плавающей точкой. Как мне показать это как целое число?

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

Ответы [ 2 ]

23 голосов
/ 27 сентября 2010

Если вы хотите, чтобы ваш ползунок привязывался к различным целочисленным значениям, вы можете использовать что-то вроде этого в вашей функции valueChanged:

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

Это позволит щелкнуть ползунком после отпускания пальцем значений 1,2, ..., 15 в зависимости от расстояния между двумя числами. Например, если вы отпустите ползунок на 2,4, он вернется к 2, а на 2,6 к 3.

3 голосов
/ 02 декабря 2009

Вы можете обрезать или округлить значение с помощью ползунка, а затем обновить его, чтобы дать пользователю обратную связь об изменении (может показаться, что оно привязывается к целочисленному значению при отпускании пользователем).

...