“日期和时间”类型的UIDatePicker仅返回日期而不是时间

时间:2015-06-20 22:45:56

标签: ios swift uidatepicker

我正在开发一个使用UIDatePicker的iOS应用。模式为“日期和时间”,因此用户可以从同一个选择器中选择日期和时间。您实际上可以在选择器中看到日,时,小时,分钟,上午/下午。

问题是,当我尝试提取时间和日期(两者都很重要)时,我只会打印出日期,即使它是“日期和时间”选择器(根据 Xcode 和我在运行时看到的内容)。

以下是代码:

let dateFormatter = NSDateFormatter()
dateFormatter.dateStyle = NSDateFormatterStyle.ShortStyle

var date = dateFormatter.stringFromDate(sender.date)

println(date)

dateTimeLabel.text = date
dateTimeLabel.textColor = UIColor.blackColor()

这与我在网上看到的其他例子相同,但我只是不明白为什么他们得到时间和日期而我只得到日期。我也需要时间!

NSDateFormatterStyle.ShortStyle将返回“2015年6月20日下午3:45”之类的内容,但只有当我将其打印到控制台或应用时,它才会返回“6/20/2015”。

如果是这种情况,有没有办法可以提取时间,因为我已经有了约会?老实说,从我见过的其他例子来看,他们都得到了。我不知道为什么我只得到约会。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:4)

您还必须设置timeStyle,例如

dateFormatter.dateStyle = .ShortStyle
dateFormatter.timeStyle = .ShortStyle

否则你只会得到" date"一部分。