[英]Get date from date picker to string in a variable
我有制作和订购应用程序,我有一个名为: selectedDate
的outlet
,我想将所选日期检索到一个变量。 我应该在View中放置了什么内容。
@IBOutlet weak var selectedDate: UIDatePicker!
func datePickerChanged(selectedDate:UIDatePicker) {
var dateFormatter = DateFormatter()
dateFormatter.dateStyle = DateFormatter.Style.FullStyle
dateFormatter.timeStyle = DateFormatter.Style.FulltStyle
var strDate = dateFormatter.string(from: selectedDate.date)
}
class ViewController: UIViewController {
@IBOutlet weak var datePicker: UIDatePicker!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func datePickerChanged(sender: UIDatePicker) {
print("print \(sender.date)")
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "MMM dd, YYYY"
let somedateString = dateFormatter.stringFromDate(sender.date)
print(somedateString) // "somedateString" is your string date
}
}
您必须为datePicker创建IBAction,并将其命名为“ datePickerChanged”,就像创建对象的出口一样。 将对象拖动到Viewcontroller时,选择连接类型“操作”。
func datePickerChanged(_:UIDatePicker)
是目标函数。
您是否正确设置了目标?
// Precise that our controller implement the delegate
class MyViewController: UIViewController {
...
@IBOutlet weak var selectedDate: UIDatePicker!
...
override func viewDidLoad() {
super.viewDidLoad()
...
selectedDate.addTarget(self, action: #selector(datePickerChanged(_:)), forControlEvents: .valueChanged) // We register the target function
}
...
// We implement that function
func datePickerChanged(sender:UIDatePicker) {
let dateFormatter = DateFormatter()
dateFormatter.dateStyle = .full
dateFormatter.timeStyle = .full
let strDate = dateFormatter.string(from: sender.date)
print(strDate)
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.