gpt4 book ai didi

ios - 如何使用 ActionSheetDatePicker 获取准确的日期?

转载 作者:行者123 更新时间:2023-11-30 11:49:13 25 4
gpt4 key购买 nike

我尝试从日期选择器中选择一些日期。

假设我从操作表中选择了2018-02-05。但在输出中我得到2018-02-04

这是我尝试过的以下代码。在 print(value) 中,我得到以下输出

输出:2018-02-04 18:30:00 +0000

func dateAndTimePicker(_ sender: Any){
let datePicker = ActionSheetDatePicker(title: "Date", datePickerMode: UIDatePickerMode.date, selectedDate: NSDate() as Date!, doneBlock: {
picker, value, index in
print(value)

return
}, cancel: { ActionStringCancelBlock in return }, origin: (sender as AnyObject).superview!?.superview)
datePicker?.show()
}

最佳答案

日期选择器返回完整的日期和时间。如果您的日期选择器仅显示日期,则它始终使用 0:00 时间。而且 Date 没有时区,因此您获取的日期始终是 0:00 UTC,而不是您本地时区的 0:00。您得到的结果是正确的,因为如果您将该 Date 调整为您本地时区的时间,则为 2018-02-05。

应用程序在向用户显示日期和时间时,在内部使用 UTC 时间并将日期格式设置为本地时间始终是一种很好的做法。这样,如果有人前往不同的时区,其新位置的数据仍然是正确的。您可以使用 DateFormatter 来完成此操作。一个简单的例子是这样的

    let formatter = DateFormatter()
formatter.dateStyle = .short
formatter.timeStyle = .short
let localDateString = formatter.string(from: datePicker.date)

关于ios - 如何使用 ActionSheetDatePicker 获取准确的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48508896/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com