我正在创建一个待办事项应用程序,我想将用户保存的日期选择器的值放入变量中,以便我可以在tableView中打印该变量。
这是我的datePicker代码:
@IBOutlet weak var datePicker: UIDatePicker!
override func viewDidLoad() {
super.viewDidLoad()
datePicker.minimumDate = Date()
datePicker.locale = Locale.current
datePicker.setValue(UIColor.gray, forKeyPath: "textColor")
}
答案 0 :(得分:1)
您可以向Picker添加特定目标以获取新值。 例如:
@IBOutlet weak var datePicker: UIDatePicker!
var selectedDate : Date?
override func viewDidLoad() {
super.viewDidLoad()
self.datePicker.addTarget(self, action: #selector(self.storeSelectedRow), for: UIControlEvents.valueChanged)
}
func storeSelectedRow(){
self.selectedDate = self.datePicker.date
}
使用故事板:
当您将pickerView
添加为@IBOutlet
时,可以向视图控制器添加@IBAction
,然后获取选择器的日期并将其存储到变量中。
请参阅此示例,将Picker Value传递给另一个ViewController https://drive.google.com/file/d/0B2RAeG6eqtvCbWp1VE5IZ0E2Vkk/view?usp=sharing
答案 1 :(得分:0)
在viewDidLoad中添加以下代码。
datePicker.addTarget(self, action: "dateChanged:",
forControlEvents: UIControlEvents.ValueChanged)
然后在func dateChanged中获取值。
func dateChanged(datePicker : UIDatePicker){
let formatter = NSDateFormatter()
//formatter
formatter.dateFormat = "yyyy年MM月dd日 HH:mm:ss"
print(formatter.stringFromDate(datePicker.date))
//there you get your label first
//let label = ...
label.text = formatter.stringFromDate(datePicker.date)
}