Използвам Swift, за да разработя приложение за iOS. Имам текстово поле в разкадровката и трябва да задам UIDatePicker като входен изглед. Следното е моят код.
@IBOutlet var textField: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
var datePicker: UIDatePicker = UIDatePicker()
datePicker.datePickerMode = UIDatePickerMode.CountDownTimer
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "HH:mm"
datePicker.setDate(dateFormatter.dateFromString("01:00")!, animated: false)
datePicker.addTarget(self, action: "datePickerValueChanged:", forControlEvents: UIControlEvents.ValueChanged)
textField.inputView = datePicker
}
func datePickerValueChanged(sender: UIDatePicker) {
println("Event is triggered.")
}
Когато стартирам приложението и променя стойността за първи път, събитието ValueChanged
не се задейства. Когато променя стойността за втори път, събитието се задейства.
Ако коментирам код datePicker.datePickerMode = UIDatePickerMode.CountDownTimer
, събитието ще се задейства, когато стойността се промени за първи път.
Трябва да персонализирам UIDatePickerMode
на CountDownTimer
. Също така трябва да се уверя, че събитието се задейства, когато стойността се промени за първи път. Как мога да поправя този проблем?
Благодаря ти.