簡體   English   中英

NSDateFormatter自動獲取dateFormat(Swift 2)

[英]NSDateFormatter automatically get dateFormat (Swift 2)

有沒有辦法自動獲取dateFormat字符串(無需顯式設置)?

     ///getting the date from datePicker
    func handleDatePicker(sender: UIDatePicker) {
        let timeFormatter = NSDateFormatter()
        timeFormatter.locale = NSLocale.currentLocale()
        timeFormatter.dateStyle = .MediumStyle
        timeFormatter.dateFormat = "dd MMM yyyy" ///get this automatically???
        dateTextField.text = timeFormatter.stringFromDate(sender.date)
    }



         [...]///other stuff
           let dateString = dateTextField.text
           let dateFormatter = NSDateFormatter()
           dateFormatter.dateFormat = "dd MMM yyyy" //can I get the string automatically based on user locale??? so I don't have to worry about setting the correct string?
           dateFormatter.locale = NSLocale.currentLocale()
           let dateFromString = dateFormatter.dateFromString(dateString!)
           print(dateFromString)/// gives nil if dateFormatter.dateFormat = "dd MMM yyyy" is commented out

您可以使用以下方式自動應用日期格式。 下面的代碼在Swift 3.0中。

方法1(使用自定義日期和時間樣式):

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = DateFormatter.dateFormat(fromTemplate: "dd MMM yyyy", options: 0, locale: NSLocale.current)
let dateString = dateFormatter.string(from: Date())

方式2(使用預設):

let dateString = DateFormatter.localizedString(from: Date(), dateStyle: .medium, timeStyle: .none)

請參考此鏈接以獲取更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM