2015-06-03 3 views
2

Я создал простой калькулятор чаевых для практики и реализовал UISliders для сумм «процент опроса» и «сплит».Swift: привязка UISlider до ближайшего значения

Сумма Split делит общую сумму счета на значение Split UISlider, очевидно, но проблема, с которой я сталкиваюсь, заключается в том, что она постоянно обновляет слайдер ... Я снял флажок «Непрерывные обновления» от Инспектор атрибутов и даже добавил код uislider.continuousupdates = false к коду, но не повезло.

Как получить UISlider для привязки к ближайшему целому значению?

Любая помощь здесь оценивается.

+0

создать [собственные слайд] (http://stackoverflow.com/questions/30530286/how-to-customize-uislider-value-in- swift/30530825 # 30530825) и сообщение в другом вопросе здесь, в stackoverflow, посмотрите, возможно, то, что вы ищете. – Icaro

ответ

0

Вы всегда можете преобразовать значение ползунка в Int в его функции IBOutlet, а затем вызвать любой другой метод или изменить значение ползунка на этот Int, если это то, что вы пытаетесь сделать. Не уверен, что это то, что вы ищете, но:

let constantValue = 8 // Don't change this 

@IBAction func slider(_ sender: UISlider) // Connect your UISlider to this 
{ 
    var sliderValue = Int(sender.value) // Get the nearest Int value from your slider 
    // Just a quick print statement to make sure we're getting the right number from the slider 
    print("\(constantValue)==D, Slider's nearest whole number: \(sliderValue)") 
    sender.value = sliderValue // This will set the slider's value to the nearest Int 
    exampleFunction(sliderValue) // Optionally call another example function from here using the new whole number from the slider 
} 
Смежные вопросы