Ik moet mei als een huidige maand krijgen, maar ik kon het niet doen. Hoe kan ik dit bereiken?
let date = NSDate()
let calendar = NSCalendar.currentCalendar()
let components = calendar.components([.Day , .Month , .Year], fromDate: date)
let year = components.year
let month = components.month
let day = components.day
Ik heb dit gedaan, maar het werkt niet.
Antwoord 1, autoriteit 100%
let now = Date()
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "LLLL"
let nameOfMonth = dateFormatter.string(from: now)
Antwoord 2, autoriteit 43%
Als u Swift 3.0gebruikt, zijn extensies en de klasse Dateeen goede oplossing.
probeer onderstaande code
extension Date {
var month: String {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MMMM"
return dateFormatter.string(from: self)
}
}
Ga ermee aan de slag zoals hieronder:
let date = Date()
let monthString = date.month
Antwoord 3, autoriteit 12%
Swift 3.0 en hoger
U gebruikt DateFormatter() zie hieronder hiervoor gebruikt in een extensie voor Date.
Voeg dit overal in uw project wereldwijd toe.
extension Date {
func monthAsString() -> String {
let df = DateFormatter()
df.setLocalizedDateFormatFromTemplate("MMM")
return df.string(from: self)
}
}
Dan kun je dit overal in je code gebruiken.
let date = Date()
date.monthAsString() // Returns current month e.g. "May"