2
UISliders 값을 선형 적으로 변경하는 대신 로그 방식으로 변경하는 데 선호되는 방법이 있습니까? 예를 들어, 슬라이더의 전반부에서 0에서 25로 변경되고 후반부에서는 25에서 100으로 변경됩니다.대수 UISlider
UISliders 값을 선형 적으로 변경하는 대신 로그 방식으로 변경하는 데 선호되는 방법이 있습니까? 예를 들어, 슬라이더의 전반부에서 0에서 25로 변경되고 후반부에서는 25에서 100으로 변경됩니다.대수 UISlider
불행히도. 그러나 슬라이더가 제공하는 숫자로 float
값을 변환 할 수 있습니다. 여기에 예제가 있습니다.
float interpretedValue;
if (sliderValue < 0.5) {
interpretedValue = sliderValue * 25/0.5;
} else {
interpretedValue = (sliderValue - 0.5)*(100 - 25)/0.5 + 25;
}
좀 더 쉽게 조정할 수 있도록 방정식에 몇 가지 상수를 남겼습니다. 하지만 성능을 극대화하기 위해 이들을 단순화했습니다.
편집 월 (17), 2013 :
나는 해석 값을 부여 슬라이더 값을 찾을 수 있습니다 방정식의 집합을 제공하도록 요청했습니다. 여기에 있습니다 :
float sliderValue;
if (interpretedValue < 25) {
sliderValue = interpretedValue * 0.5/25;
} else {
sliderValue = (interpretedValue - 25) * 0.5/(100 - 25) + 0.5;
}