Привет, я пытаюсь отображать UIDatePicker
вместо клавиатуры, когда вызывается UITextField
, чтобы пользователь мог указать время начала и окончания события. Мой код работает, но не очень хорошо, а не так, как я хочу.Использование UIDatePicker вместо клавиатуры для проблем UITextField
Моя первая проблема заключается в том, что всякий раз, когда вы нажимаете на один из UITextField, UIDatePicker
приходит только во второй раз, когда используется UITextField
. В противном случае отображается оригинальная клавиатура.
Моя вторая проблема заключается в том, что всякий раз, когда редактируется UIDatePicker
, изменяется только UITextField
всякий раз, когда редактируется UIDatePicker
. Мне нужен UITextField
, чтобы отобразить строку в UIDatePicker
, как только ее откроется, чтобы UITextField
был в курсе событий, происходящих на UIDatePicker
.
Вот мой текущий код:
override func viewDidLoad() {
super.viewDidLoad()
var datePickerView : UIDatePicker = UIDatePicker()
datePickerView.datePickerMode = UIDatePickerMode.Time
StartTimeTextField.inputView = datePickerView
datePickerView.addTarget(self, action:
Selector("handleDatePicker:"), forControlEvents: UIControlEvents.ValueChanged)
var datePickerView2 : UIDatePicker = UIDatePicker()
datePickerView2.datePickerMode = UIDatePickerMode.Time
EndTimeTextField.inputView = datePickerView2
datePickerView2.addTarget(self, action: Selector("handleDatePicker2:"), forControlEvents: UIControlEvents.ValueChanged)
}
func handleDatePicker(sender: UIDatePicker) {
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "hh mm am pm"
StartTimeTextField.text = dateFormatter.stringFromDate(sender.date)
}
func handleDatePicker2(sender: UIDatePicker) {
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "hh mm am pm"
EndTimeTextField.text = dateFormatter.stringFromDate(sender.date)
}
Может кто-нибудь мне помочь? Спасибо
взгляд на это http://stackoverflow.com/questions/4777237/iphone-datepicker-instead- из-за клавиатуры –
@SaurabhPrajapati Это будет работать, но я действительно не понимаю Objective-C. Спасибо, хотя –