web-dev-qa-db-ja.com

Swift 3で日付の書式設定が機能しない

関数のNSDateに問題があります。基本的に、書式設定は機能していません。また、間違っていることを確認するために別の目が必要です。

コード:

 @IBOutlet weak var dateField: NSTextField!

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MMMM dd yyyy"
let currentDate = NSDate()

convertedDateString = dateFormatter.string(from:currentDate as Date)
dateField.stringValue = convertedDateString as String

print("convertedDate: ", convertedDateString)
print("dateField.stringValue: ", dateField.stringValue)

結果:

変換日:2016年7月25日
dateField.stringValue:7/25/16

17
David DelMonte
Date().toString() // convert date to string with userdefined format.

extension Date {
        func toString() -> String {
            let dateFormatter = DateFormatter()
            dateFormatter.dateFormat = "MMMM dd yyyy"
            return dateFormatter.string(from: self)
        }
    }
32
SaRaVaNaN DM

日付形式に対して文字列を取得するための拡張機能

extension Date {
        func toString(format: String) -> String {
            let dateFormatter = DateFormatter()
            dateFormatter.dateFormat = format
            return dateFormatter.string(from: self)
        }
    }

Date().toString(format:"H:mm")
8
Muhammad Adnan

これは私が遊び場で試したもので、動作します。

import Foundation

let dateFormatter = NSDateFormatter()

dateFormatter.dateFormat = "MMMM dd yyyy"
let currentDate = NSDate()

let convertedDateString = dateFormatter.stringFromDate(currentDate)
var dateField:NSTextField = NSTextField()
dateField.stringValue = convertedDateString as String

print(convertedDateString) //July 25 2016
print(dateField.stringValue) //July 25 2016

唯一の違いは、NSDateFormatterに変更し、dateFormatter.stringの代わりにdateFormatter.stringFromDateを持っていることです。

enter image description here

ストーリーボードまたはxibにNSTextFieldがある値を誤って設定しましたか?

5
Zac Kwan

私が抱えていた問題は、再インストールしてテストする前に携帯電話からアプリを削除しなかったことです。コードはシミュレータでは機能していましたが、電話では機能していませんでした。お役に立てれば

0
Geo B