iOS Dev
Відкрити в Telegram
👨💻Автор: Виктор Грушевский (@Viktorianec) ⚒️ База: https://boosty.to/ios_dev | 🤖 @iOSIQBot | https://iosiq.ru 🍏Канал об iOS-разработке, алгоритмах и архитектурах ⭐️ Подготовка к собесам ⭐️ Код. Много кода. #ios #mobile #swift
Показати більше7 881
Підписники
+424 години
-27 днів
-5130 день
Архів дописів
7 881
🕺 AsyncImage теперь поддерживает HTTP-кэширование, еееее!
А ещё в 27 оси можно запилить собственный реквест при загрузке (и политику кэширования, да даже собственный URLCache).
📺 Никакой повторной загрузки при скролле для AsyncImage (если вы не укажете обратное).
😃 iOS Dev
7 881
⚡️ State больше не динамическое свойство, а macro
А ещё они бэкпортнули это поведение аж до 17 оси.
@Observable class StickerStore { }
struct StickerStoreView: View {
// store is now lazily initialized, only
// created once for the lifetime of the view
@State private var store = StickerStore()
var body: some View {
// ...
}
}
😃 iOS Dev7 881
В Swift 6.4 продолжается работа по улучшению тайпчекера
The compiler is unable to type-check this expression in reasonable time во многих ситуациях теперь будет нормально показывать ошибку.
Пока Слава Пестов в огромном разборе с примерами на Swift Forums делится прогрессом по роадмапу, в видео показали, как это будет выглядеть на практике.
Не верится, что будет всегда так, но во многих коммонкейсах эта история точно должна стать лучше.
😃 iOS Dev7 881
WWDC26: Platforms State of the Union - это было куда веселее!
📺 Показали кучу улучшений Xcode, SwiftUI, поддержки агентов в нашей любимой IDE, а также рассказали про улучшения Swift и обо многом другом.
Самые интересные фичи будем разбирать следующую неделю.
А на гифке пример одной из топовых фич SwiftUI, которая позволит выпилить кастомные свайпы для удаления.
😃 iOS Dev
7 881
Что скрывает UIPageViewController
Seb Vidal и ertem выяснили несколько неочевидных фактов о UIPageViewController.
Вообще он устроен чертовски интересно: внутри крутится кастомный UIScrollView (класс
_UIQueuingScrollView), который создает лишь иллюзию бесконечной ленты.
И скорее всего вы знали, что на самом деле в иерархии всегда находятся всего три вьюхи (текущая, предыдущая и следующая), а вот магия непрерывного скролла достигается за счет постоянного и бесшовного сброса contentOffset и фреймов подструктур.
Так вот, оказывается, что через приватный метод _visibleView реально вытащить активный экран. И если объединить этот трюк с KVO-трекингом (о чём и написал ertembiyik) и учесть размеры фрейма и interpageSpacing, можно получить буквально «виртуальный contentOffset».
После этого мы можем вертеть анимациями как угодно, как пишет Себ, можно например, воссоздать легендарный интерактивный скраббер из Apple Photos прямо у себя в приложении!
😃 iOS Dev