Привет, Хабр! Меня зовут Алексей Непомнящих и я мобильный разработчик «Леруа Мерлен». В этой статье я бы хотел поделиться своим опытом внедрения первой большой фичи на SwiftUI в приложение, целиком состоящее из UIKit с минимальной требуемой версией iOS 14.
Swift *
Открытый объектно-ориентированный язык
Новости
Result builders in Swift
Конструктор результатов можно рассматривать как встроенный предметно-ориентированный язык (DSL) для сбора деталей, которые объединяются в конечный результат. Конструкторы результатов в Swift позволяют создавать результат, используя "блоки сборки", расположенные в ряд друг за другом.
Примеры.
Вот функция, которая возвращает одну строку.
SwiftUI уроки (часть 11)
Ранее мы создали приложение в котором пользователь мог с помощью навигационной панели переходить из экрана в котором отображается список с информацией на экран содержащий уже детальную информацию и такой паттерн навигации весьма распространен среди приложений и является одним из часто повторяющихся, однако сегодня я покажу вам еще один встречающийся паттерн, когда пользователь видит поднимающийся модальный экран.
SwiftUI уроки (часть 10)
В этой главе мы изучим реализацию и настройку навигационных интерфейсов в SwiftUI, с особым вниманием к компоненту NavigationStack, представленному в iOS 16. Работая над демонстрационными проектами, вы получите практический опыт работы с NavigationStack и узнаете, как создавать интуитивно понятные навигационные решения для ваших приложений.
Оплата аккаунта Apple Developer в 2024 году
В этой статье я приведу примеры по оплате аккаунта разработчика Apple которые я сам лично попробовал. Информация приведенная ниже достаточно актуальная и затрагивает период конца 2023 и начала 2024 года.
Android и iOS, Flutter и Kotlin: что обо всём этом расскажут на Mobius
До конференции Mobius остался месяц, мы представляем Хабру её программу. И её вечно непросто поделить на блоки.
Понятно, что доклады «про iOS» и «про Android» интересны разным разработчикам, поэтому хабрапост хочется разделить пополам. Но как правильнее поступить с докладами по Flutter? А про Kotlin, когда есть KMP? А с теми, которые не привязаны к платформе?
В общем, не уделяйте слишком много внимания тому, как всё разделено на части — лучше смотрите, о чём будут сами доклады.
SwiftUI уроки (часть 9)
Разбираемся с List, ForEach and Identifiable
В UIKit для iOS один из наиболее часто используемых элементов управления пользовательским интерфейсом - это UITableView. Если вы имеете опыт разработки приложений с использованием UIKit, то знаете, что table view предназначен для отображения списков данных. Этот элемент управления пользовательским интерфейсом широко используется в приложениях ориентированных на контент, например, в новостных приложениях или в принципе в любых популярных приложениях, таких как Instagram, Twitter, Reddit и другие.
Импортирование картинок и звуков в Swift Package
В качестве курсовой работы мне необходимо было разработать библиотеку с «успокаивающим» элементами на языке Swift. Ну знаете, это такие залипательные штуки, по типу спиннера или пузырчатой плёнки, которую лопаешь.
Clean architecture и MVVM в iOS разработке
В этой статье мы покажем на примерах проектов как паттерны MVVM и Clean Architecture могут быть применены в iOS приложении.
О, вы из Англии? Локализация Ozon Seller на iOS
Всем привет! Меня зовут Андрей, и я делаю iOS-приложение для продавцов Ozon Seller. Наша команда поставляет фичи, красит кнопки, работает над перформансом и всячески улучшает пользовательский опыт работы продавцов на Ozon.
Нашим приложением активно пользуются юзеры из разных стран, и поэтому день Х, когда мы решим добавить поддержку разных языков, был неизбежен. В этой статье я расскажу про стандартный процесс локализации iOS-приложения, про то, с какими трудностями мы столкнулись и как их решили. Разберём системный алгоритм определения языка и объясню, почему он нам не подошёл. Сделаем перевод приложения «на лету», а также посмотрим, как изменился наш флоу работы со строками.
Reflection в iOS: как посмотреть содержимое любой сущности
В Swift, как и во многих других языках программирования, есть возможность получать информацию о структуре объекта в Runtime. Для этого в языке есть специальный механизм — Reflection. С его помощью можно просматривать содержимое любых сущностей, не зная о них абсолютно ничего.
Меня зовут Светлана Гладышева, я iOS-разработчик в Тинькофф. Расскажу, какие возможности есть у Reflection в Swift, в чем ограничения и подводные камни. Рассмотрим его применение на примерах и узнаем, для чего его можно использовать в повседневной работе. А еще поговорим о том, как можно отключить Reflection в проекте и на что это может повлиять.
SwiftUI уроки (часть 8)
SwiftUI предоставляет возможность анимировать изменения для отдельных представлений и переходы между представлениями. Вы можете использовать встроенные анимации для создания различных эффектов и разумеется создавать кастомные. В этой части мы изучим неявные и явные анимации в SwiftUI, а также создадим несколько демонстрационных проектов для практики.
Как передавать данные между вью контроллерами в Swift
У многих новичков в UIKit наступает момент, когда им нужно создать больше одного экрана в своем приложении и передать данные из одного вью контроллера в другой, чтобы первое приложение обрело полноценный смысл и функциональность.
В этой статье собраны все традиционные способы передачи данных между вью контроллерами в UIKit, от простого к сложному, чтобы процесс перестал сопровождаться мозговым штормом и помог всем обучающимся освоить желаемое.
Ближайшие события
SwiftUI уроки (часть 7)
В этом разделе вы узнаете, как рисовать линии, дуги и диаграммы с помощью Path и встроенных форм, таких как Circle и RoundedRectangle, в SwiftUI. Вот что мы изучим:
* Понимание Path и рисование линий
* Что такое протокол Shape и как нарисовать настраиваемую форму путем соответствия протоколу
* Рисование диаграммы
* Создание индикатора прогресса с помощью открытого круга
* Рисование «pie chart» диаграммы
Apple Vision Pro: обзор платформы и создание первого мобильного приложения
Привет! Меня зовут Андрей Груненков, я iOS - разработчик в агентстве InstaDev. Делаем мобильные приложения, которые помогают бизнесу расти. В этой статье я расскажу о том, как разработать первое мобильное приложение для платформы Apple Vision Pro.
Для начала надо сказать пару слов о самой платформе. Apple Vision Pro это компьютер Apple, который предоставляет пользователю новый опыт пространственного взаимодействия с интерфейсом. По сути представляет из себя гарнитуру смешанной реальности (AR/VR).
Достаточно просто надеть устройство на голову, чтобы погрузиться в последние проекты или трёхмерный контент.
Гарнитура отслеживает движение глаз пользователя, передает изображение с внешних камер на дисплеи перед глазами и показывает 3D-контент. При нажатии на одну кнопку можно погрузиться в виртуальный мир, в остальное время окна и приложения перемещаются в воздухе перед пользователем и дают возможность с ними взаимодействовать.
Apple Vision Pro помогает решать следующие задачи:
SwiftUI: архитектура State-Model-View
В документации по UIKit компании Apple можно найти объяснение, что “структура приложений основана на шаблоне проектирования Model-View-Controller (MVC)”.
В материалах Apple по SwiftUI объяснений и даже просто ссылок на паттерны проектирования, похоже, нет. Попробуем сначала разобраться почему. Далее рассмотрим логичные и простые решения для построения как отдельных компонентов, так и уровень приложения с использованием состояний и property wrappers; подход, который логично обозначить как State-Model-View.
SwiftUI уроки (часть 6)
Мы наконец-то добрались до одних из самых важных тем связанных с управлением данными, включая их модификацию, слежение за ними и передачу. Мы начнем с самых простых вещей таких как State и Binding.
SwiftUI уроки (часть 5)
Buttons, Labels, Gradients
В этой части мы рассмотрим основы создания кнопок в SwiftUI. Кнопки играют ключевую роль в любом пользовательском интерфейсе приложения. Хорошо спроектированные кнопки не только делают ваш интерфейс более привлекательным, но и повышают пользовательский опыт от вашего приложения.
YandexMapKit и SwiftUI: обратный геокодинг
Обратное геокодирование (получение адреса по географическим координатам) на стороне клиента в рамках разработка мобильного приложения под IOS для мониторинга автотранспорта
IOS - 15.5, SwiftUI, YandexMapKit
Я не стану описывать в статье способ подключения YandexMapKit к проекту. Во-первых, это не сложно, а во-вторых описаний этого процессе в интернете предостаточно, в том числе на сайте YandexMapKit SDK.
Однако хочу "пожаловаться", что исключительно из-за картографии Яндекса в проекте начали использовать CocoaPods, потому что вендор (по состоянию на март 2024 года) не снизошел до разработки пакета, который можно подключить к проекту минуя Pods.
Интерактивные виджет-подборки в Иви (iOS)
И снова здравствуйте! В 2022 году у нас появились первые HomeScreen виджеты, это был первый опыт работы с библиотекой WidgetKit. Затем появились LockScreen виджеты и мы их тоже добавили. А выход iOS 17 и поддержка библиотеки AppIntents в виджетах, знаменовал новый этап в эволюции виджетов.
В этой статье поговорим о том, как мы зарелизили интерактивные виджеты и из чего они состоят: разделение логических слоёв на SPM пакеты, обеспечение качества (unit, snapshot тесты), accessibility и с каким нюансами столкнулись, о которых Apple не рассказывала на WWDC23.
Вклад авторов
WildGreyPlus 211.0miden16 170.0yeswolf 153.0illusionofchaos 140.0nsurl-dev 121.0yarmolchuk 119.8MaxRokatansky 118.6niklnd 112.0freetonik 112.0YourDestiny 103.0