Как показать значение UISlider как целое число
Вопрос
Значение UISlider в настоящее время отображается как число с плавающей запятой.Как показать это как целое число?
sliderCtl = [[UISlider alloc] initWithFrame:frame];
sliderCtl.minimumValue = 1;
sliderCtl.maximumValue = 15;
sliderCtl.continuous = NO;
sliderCtl.value = 1;
[sliderCtl setShowValue:YES];
Решение
Вы можете усечь или округлить значение ползунка, а затем обновить его, чтобы дать пользователю обратную связь об изменении (похоже, что оно привязывается к целочисленному значению, когда пользователь отпускает его).
Другие советы
если вы хотите, чтобы ваш ползунок привязывался к различным целочисленным значениям, вы можете использовать что-то вроде этого в своей функции 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.