2015-03-11 2 views
2

Я хочу, чтобы пользователь мог выбрать диапазон лет в приложении WatchKit, поскольку в WatchKit нет UIPicker, можно ли использовать слайдер, чтобы пользователь нажал + или - чтобы увеличить год , который будет отображаться на моей этикетке выше? Я прочитал документацию, но все еще не могу понять, как реализовать метод setNumberOfSteps .... альтернативно, есть ли лучший способ сделать это, чем слайдер?Использование ползунка в WatchKit

class InterfaceController: WKInterfaceController { 

@IBOutlet weak var label: WKInterfaceLabel! 

@IBOutlet weak var sliderOutlet: WKInterfaceSlider! 

@IBAction func slider(value: Float) { 
    func setNumberOfSteps(numberOfSteps: Int){ 
     label.setText("\(numberOfSteps)") 
} 
} 

ответ

2

Вы можете определенно сделать это с помощью ползунка. Для меня нет лучшей альтернативы. Вы также можете представить табличный вид со всеми возможными годами, которые вы хотите выбрать, но я думаю, что слайдер, вероятно, лучший вариант, если у вас не слишком много лет, чтобы выбрать. Вот краткий пример подключения WKInterfaceSlider с WKInterfaceLabel.

Раскадровка

  • Добавить WKInterfaceSlider и WKInterfaceLabel к контроллеру интерфейса
  • Добавьте slider и label IBOutlets
  • Добавить sliderValueChanged IBAction к классу InterfaceController
  • Установить свойства, чтобы соответствовать скриншоты

Label Settings

Slider Settings

Код

import WatchKit 

class InterfaceController: WKInterfaceController { 

    // MARK: - Properties 

    @IBOutlet weak var label: WKInterfaceLabel! 
    @IBOutlet weak var slider: WKInterfaceSlider! 

    // MARK: - Interface Callback Methods 

    @IBAction func sliderValueChanged(value: Float) { 
     let roundedValue = Int(round(value)) 
     self.label.setText("\(roundedValue)") 
    } 
} 

Надеется, что помогает пролить некоторый свет.

+0

СПАСИБО !!! Полностью пропущено, что данные для ползунка вводятся с помощью Attributes Inspector .... – GarySabo

+0

Добро пожаловать, чувак ... рад помочь! – cnoon

Смежные вопросы