[英]Get selected time from UIDatePicker
我的视图上有一个UIDatePicker 。
我已将DatePicker设置为时间模式。
因此,用户只能选择时间。
用户选择的任何时间都应显示在文本框中。
我不知道如何显示时间值-由用户通过DatePicker设置的-时间模式。
请帮我..
您需要使用NSDateFormatter
来格式化UIDatePicker
返回的NSDate
。 这是一些未经测试的示例代码,假设您有一个UILabel作为属性“ myLabel”和一个UIDatePicker作为属性“ myDatePicker”:
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init];
[outputFormatter setDateFormat:@"h:mm a"];
self.myLabel.text = [outputFormatter stringFromDate:self.myDatePicker.date];
[outputFormatter release];
您需要在Unicode区域设置数据标记语言页面上检查日期格式模式。 根据您的语言环境,字符串"h:mm a"
将为您提供类似于"12:08 PM"
。
迅捷4.0
// Action where you want to show time picker
{
let datePicker = UIDatePicker()
datePicker.datePickerMode = .time
let dateFormatter = DateFormatter()
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
dateFormatter.timeZone = TimeZone.autoupdatingCurrent
dateFormatter.timeStyle = DateFormatter.Style.short
}
// On Action of Datepicker value change or Done Outlet
{
let date = self.datePicker.date
let strTime = safeDate.dateStringWith(strFormat: "hh:mm a")
print(strTime)
}
// Extension of Date
extension Date {
func dateStringWith(strFormat: String) -> String {
let dateFormatter = DateFormatter()
dateFormatter.timeZone = Calendar.current.timeZone
dateFormatter.locale = Calendar.current.locale
dateFormatter.dateFormat = strFormat
return dateFormatter.string(from: self)
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.