2016-12-22 2 views
0

Я пытаюсь выяснить, как использовать текущую дату в Swift 3. Я читал, что Swift перенес NSDate на объект Date. Поэтому я проверил this пример кода:Код примера с сайта Apple не работает?

let dateFormatter = DateFormatter() 
let date = Date(timeIntervalSinceReferenceDate: 410220000) 

// US English Locale (en_US) 
dateFormatter.locale = Locale(identifier: "en_US") 
dateFormatter.setLocalizedDateFormatFromTemplate("MMMMd") // set template after setting locale 
print(dateFormatter.string(from: date)) // December 31 

// British English Locale (en_GB) 
dateFormatter.locale = Locale(identifier: "en_GB") 
dateFormatter.setLocalizedDateFormatFromTemplate("MMMMd") // // set template after setting locale 
print(dateFormatter.string(from: date)) // 31 December 

Но когда я скопировать и вставить это в моей Xcode он показывает ошибку, что

Use of unresolved identifier DateFormatter 
Use of unresolved identifier Date 

Когда я просматриваю быструю версию из терминала:

xcrun swift -version 
Apple Swift version 3.0.1 (swiftlang-800.0.58.6 clang-800.0.42.1) 
Target: x86_64-apple-macosx10.9 

Я не могу импортировать некоторые библиотеки?

EDIT

Если изменить его к этому

let dateFormatter = NSDateFormatter() 
let date = NSDate(timeIntervalSinceReferenceDate: 410220000) 

Это работает отлично.

+0

Где вы вставляете этот код? Разумеется, он должен пойти в какой-то метод. В ответ на ваш вопрос типичные инструкции 'import' (например,' import UIKit') должны включать это. – Rob

+0

, конечно, внутри функции. – Bernard

+1

С учетом вашего редактирования ваш проект должен быть настроен для Swift 2.3. – Rob

ответ

2

Возможно, на вашем компьютере установлена ​​последняя версия Swift, когда вы проверяете ее на терминале, но ваш проект должен работать на Swift 2.3.

Swift 2.3 не знает DateFormatter и Date типы, только в Swift 3.0+.

+0

Да, я использовал swift с устаревшим кодом, присвоенным "yes" – Bernard

Смежные вопросы