2016-08-13 9 views
7

przed Swift3, w moim projekcie użyłem tej funkcji:NSCalendar w Swift3

var components = (calendar as NSCalendar).components([.year, .monthSymbols, .firstWeekday, .timeZone, .hour, .minute], from: data_corrente) 

Teraz mam zmianę projektu przy użyciu szybkiej 3 (xCode8 beta5), ale mam ten błąd:

Type 'NSCalendar.Unit has no member 'monthSymbol'

Czy ktoś może wyjaśnić, gdzie jest problem i pomóc mi go rozwiązać? Myślę, że jest problem z migracją

+1

Zamiast rzutowanie w dół do NSCalendar, wystarczy użyć kalendarz z „dateComponents” i krótkim składni elementów: http://stackoverflow.com/a/38720438/ 2227743 – Moritz

+1

Czy używasz tego samego projektu co facet w tym pytaniu: http://stackoverflow.com/questions/38920909/xcode-8-and-swift-3-scalendar? 'timeZone',' monthSymbol' i 'firstWeekday' nigdy nie były jednostkami/komponentami kalendarzowymi. – vadian

+0

Usunąłem forstWeekDay i monthSymbol ... nawet jeśli w poprzedniej wersji wszystkie zostały skompilowane z sukcesem – Lorenzo

Odpowiedz

8

W wersji Swift3 z beta Xcode 8. Można użyć Calendar zamiast NSCalendar jak tak:

let calendar = Calendar.current 
let component = calendar.dateComponents([.day,.month,.year], from: Date()) 
+0

Czy masz jakieś przykłady korzystania z tego komponentu? –

Powiązane problemy