Комментарии 9
Спасибо большое за статью!
Очень интересная и круто, что актуальная для проектов со SwiftUI!
Подскажи пожалуйста, как я могу использовать макросы в своем приложении, если минимальная таргет версия 14 iOS?
Привет ?
Я это особо не затрагивал, но макрос #Preview работает и с UIKit:
#Preview {
let button = UIButton(type: .system)
button.setTitle("UIKit", for: .normal)
return button
}
На счет iOS 14, сам механизм макросов поддерживается на любой версии оси, главное использовать Xcode 15. Можно создать свой макрос или использовать сторонний. А вот макросы от Apple (SwiftData, Observable, Preview и тд) доступны только от iOS 17.
Отмечу что ничего не мешает поставить таргет в Xcode - iOS 13 и использовать макрос #Preview. Так как код превью не используется для сборки, туда можно смело добавить #if available(iOS 17, *)
Спасибо большое за дополнение. Но получается, что #Preview
теперь уже точно не компилируется? Потому что до SDK iOS 17 все попадало в билд и уже вычищалось во время архивации, соответственно нам пришлось обрамлять своими макросами такие превью, так как их компиляция могла задействовать моки, которые складываются в некомпилируемые пакеты и соответственно на CI возникала ошибка компиляции, теперь этого можно избежать с помощью такого макроса?
PS: В Xcode 15 Beta 3, макрос #Preview стал доступен для всех версий iOS. То что я отписывал выше, уже не актуально.
Спасибо за статью, сохранил в закладки, правильно понимаю, что я могу использовать #Preview, по сути только для просмотра превью элементов UIKit, как в SUI?
Изнутри: Swift макрос — #Preview