Я использую RangeSlider, который является типом UIControl:
https://github.com/WorldDownTown/RangeSeekSlider
У него есть свойство, называемое numberFormatter. Я хочу дать ползунку минимальное и максимальное значение, скажем, в дюймах (minValue = 48 дюймов, maxValue = 96 дюймов).... и он должен отображать высоту ползунка в таком формате:
48 (дюймы) будут отформатированы как строка "4'0''", т.е. 4 фута 0 дюймов
49 дюймов -> "4'1"
... 74 дюйма -> "6 футов 2 дюйма"
и т.п.
ИЛИ футы -> футы и дюймы:
6.08333 -> "6'1'' и т. д.
как я могу указать эти форматы для экземпляра RangeSlider?
Вот документация для NumberFormatter:
https://developer.apple.com/documentation/foundation/numberformatter
Я создал подкласс NumberFormatter. Как мне сделать так, чтобы экземпляр RangeSlider вызывал эту функцию переопределения каждый раз, когда ему нужно отображать отформатированную высоту на метках двух больших пальцев?
class HeightFormatter : NumberFormatter{
override func string(from number: NSNumber) -> String? {
let feet = number.int32Value/12
let inches = number.int32Value % 12
let height = "\(feet)"+"'"+"\(inches)"+"\""
return height
}
}
NumberFormatter
. Стандартный форматтер не может обрабатывать преобразования в/из футов/дюймов. - person rmaddy   schedule 21.05.2018