![](/img/trans.png)
[英]How to get the date from an UIDatePicker with mode set to Time only
[英]How to set Date and time from UIDatePicker to UITextField in 12 hours format
如果系统日期为24小时格式。 我想将AM / PM设置为12小时格式的选定日期和时间到文本字段作为输入视图。 我正在尝试转换选定的日期和时间,但给了我24小时格式。 谁能帮帮我吗。 这是我的转换代码:
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm"
let dateAsString = dateFormatter.string(from: datePickerView.date)
dateFormatter.dateFormat = "yyyy-MM-dd h:mm a"
let date = dateFormatter.date(from: dateAsString)
let DateIn12 = dateFormatter.string(from: date!)
print("12 hour formatted Date:", DateIn12)
您似乎在这里做不必要的工作。
鉴于您已经有一个约会,这应该可以:
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd h:mm a"
let date12 = dateFormatter.string(from: datePickerView.date)
print("12 hour formatted Date:", date12)
您可以从日期选择器的日期值中获取所需的任何格式的日期。 这里有一些选项可能会有所帮助。
let datePickerView = UIDatePicker()
datePickerView.date = Date()
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd h:mm a"
var dateAsString = dateFormatter.string(from: datePickerView.date)
print(dateAsString)
dateFormatter.dateFormat = "MMM-yy-dd HH:mm"
dateAsString = dateFormatter.string(from: datePickerView.date)
print(dateAsString)
这给
2017-09-18 1:18 PM
Sep-17-18 13:18
您不需要代码的后半部分。
您需要在dateformatter中传递datepickerview.date。 尝试这个
let dateFormatter = DateFormatter()
print("Date:=\(datePickerView.date)")
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss a"
let DateIn12 = dateFormatter.string(from: datePickerView.date)
print("12 hour formatted Date:", DateIn12)
dateFormat =“ yyyy-MM-dd h:mm a”
要以24小时格式获取时间,格式化程序中使用大写的“ H”,而小写的“ h”则以12小时的格式显示时间。
因此,您可以随时记住这一点,随时创建dateformatter。
谢谢。
用以下代码替换您的代码以将24小时日期转换为12小时格式
let formatter = DateFormatter()
//Formatter "yyyy-MM-dd HH:mm a" for 24 hours time
// "yyyy-MM-dd hh:mm a" for 12 hours time
// So you need to write only
formatter.dateFormat = "yyyy-MM-dd hh:mm a"
let twelveHourDate = formatter.string(from: datePickerView.date)
print("12 hour format date is \(twelveHourDate)")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.