2016-09-15 13 views
61

Jak ustawić aktualną datę etykiety.text w Swift 3?Uzyskaj aktualną datę w Swift 3?

Chcę wydrukować tylko dziś na ekranie. Nie znalazłem, jak to zrobić.

w C# jest bardzo prosta:

var date = DateTime.Now 

muszę napisać 15.09.2016 w szybkich 3. dzięki

+2

Możliwy duplikat http://stackoverflow.com/questions/24070450/how-to-get-the-current-time-and- godzina-jako-datetime – Koen

+0

to już nie działa? – yucel

+1

Czy przewinąłeś do samego końca, aby uzyskać odpowiedź Swift 3? – Koen

Odpowiedz

148

Mówisz w komentarzu, który chcesz otrzymać "15.09.2016".

W tym celu należy użyć Date i DateFormatter:

let date = Date() 
let formatter = DateFormatter() 

Daj format, który chcesz formatyzatorem:

formatter.dateFormat = "dd.MM.yyyy" 

uzyskać ciąg wynik:

let result = formatter.string(from: date) 

Ustaw etykietę :

label.text = result 

Wynik:

15.09.2016

+1

bardzo dziękuję – yucel

+1

Dziękuję! Działa dobrze. – Raja

33

Można to zrobić w ten sposób z Swift 3.0:

let date = Date() 
let calendar = Calendar.current 
let components = calendar.dateComponents([.year, .month, .day], from: date) 

let year = components.year 
let month = components.month 
let day = components.day 

print(year) 
print(month) 
print(day) 
+0

dziękuję bardzo – yucel

+9

Nie mogę uwierzyć, nawet po Swift 3, że obsługa daty jest tak zła! To wstyd, biorąc pod uwagę, że Data w .NET była w wersji 1 w 2002 roku z pamięci. DateTime.Now lub DateTime.Now.Month są o wiele łatwiejsze! – csmith

+1

Skąd wiesz, czy ten dzień to poniedziałek, wtorek czy środa? –

Powiązane problemy