Просто наткнулся на это сегодня. Я получаю предупреждения в Xcode 4.6, если пытаюсь получить доступ к CALayer
без импорта <QuartzCore/QuartzCore.h>
. Тем не менее, он отлично работает в Xcode 5.
Импорт кварцевого ядра не требуется в Xcode 5?
Ответ 1
Да, <QuartzCore/QuartzCore.h>
автоматически включается,
но это кажется скорее побочным эффектом, чем предполагалось, потому что
он включен только косвенно:
-
<UIKit/UIKit.h>
включает<UIKit/UISlider.h>
, - в SDK iOS 7,
<UIKit/UISlider.h>
включает<QuartzCore/QuartzCore.h>
, из-за новых переменных экземпляра в классеUISlider
(типаCAShapeLayer
).
Кроме того, Xcode 5 имеет новый параметр сборки "Link Frameworks Automatically", который по умолчанию (и требуется новая функция "modules" ), так что структура QuartzCore также добавляется в библиотеки ссылок.