#ios #uislider
#iOS #uislider
Вопрос:
мне нужно получить текущее значение пользовательского интерфейса и поместить его в переменную. мое имя пользовательского интерфейса — searchRadiusSlider
и я хочу, чтобы значение было %.0f
.
я мог бы отобразить его в виде строки, подобной этой :
[NSString stringWithFormat:@"%.0f", [(UISlider *)sender value]];
но в моем случае я хочу просто получить его как числовое :
self.searchRadius= //what to put here
Заранее спасибо 🙂
Комментарии:
1. вы также хотите удалить десятичные дроби или просто захватить значение?
2. Привет, я действительно хочу получить значение, подобное 10, а не 10.0
Ответ №1:
Если вы хотите удалить десятичные дроби, просто приведите к int, и это приведет к усечению десятичных дробей.
self.searchRadius = (int)searchRadiusSlider.value;
Если вы хотите округлить десятичные дроби, как %.0f
используйте round() из math.h (не совсем, %.0f
использует округление банкира, тогда как round () использует округление вдвое больше, поэтому 2.5 округляется до 2 в первом случае и 3 в более позднем)
self.searchRadius = (int)round(searchRadiusSlider.value);
Комментарии:
1. мммм, значит, я должен использовать round для получения значений типа 20, 30 и т.д.??
2. @malek «я хочу, чтобы значение было %.0f» затем вы хотите округлить
Ответ №2:
self.searchRadius = searchRadiusSlider.value;
Комментарии:
1. Привет, я действительно хочу получить значение, подобное 10, а не 10.0, я получил значение 20.0, но я хочу, чтобы 20 было слишком коротким :))
2. Malloc значение ползунка по умолчанию варьируется от 0.0 до 1.0. вы можете либо умножить результат, либо изменить минимальные и максимальные значения слайдера. В любом случае оно поставляется в виде значения с плавающей точкой, которое вы можете привести к желаемому типу.