Ios UIDatePicker';s值更改事件为';第一次更改值时触发t
我使用Swift开发iOS应用程序。我在故事板上有一个文本字段,需要将UIDatePicker设置为其输入视图。下面是我的代码Ios UIDatePicker';s值更改事件为';第一次更改值时触发t,ios,iphone,ipad,swift,uidatepicker,Ios,Iphone,Ipad,Swift,Uidatepicker,我使用Swift开发iOS应用程序。我在故事板上有一个文本字段,需要将UIDatePicker设置为其输入视图。下面是我的代码 @IBOutlet var textField: UITextField! override func viewDidLoad() { super.viewDidLoad() var datePicker: UIDatePicker = UIDatePicker() datePicker.datePickerMode = UIDatePicke
@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
事件不会触发。当我第二次更改值时,将触发该事件
如果我注释codedatePicker.datePickerMode=UIDatePickerMode.CountDownTimer
,则第一次更改值时将触发该事件
我需要将UIDatePickerMode
自定义为CountDownTimer
。我还需要确保在值第一次更改时触发事件。如何解决此问题
谢谢。这可能是UIDatePicker在倒计时模式下的错误(可能没有设置默认值以识别“更改”,但不是100%确定) 要解决此问题,您可以在
viewDidLoad
方法中执行以下操作:
dispatch_async(dispatch_get_main_queue(), ^{
datePicker.countDownDuration = (NSTimeInterval) duration;
});
谢谢你的回复。设置默认值后,这个问题仍然存在。我刚刚更新了问题中设置默认值的代码。请检查更新。这种方法可能对你更有效。我无法测试,因为我不在我的mac附近。对此我很抱歉。谢谢你的回复。