PreferenceKeys в SwiftUI
Stewart Lynch
0:00 / 0:00
PreferenceKeys в SwiftUI
5 511 просмотров · 3 года назад
Stewart Lynch
27 тыс. подписчиков
5 511 просмотров · 3 года назад
В этом уроке я познакомлю вас с ключами предпочтений SwiftUI (PreferenceKeys). Если вы уже некоторое время разрабатываете приложения на SwiftUI, вы, возможно, использовали их, даже не подозревая об этом.
Во-первых, я объясню, что такое ключ предпочтений, и продемонстрирую, как вы использовали их в своих проектах с самых ранних этапов разработки SwiftUI. Удивительно узнать о скрытой мощи этих важных инструментов.
Далее я углублюсь в структуру и требования к созданию пользовательских ключей предпочтений. Я проведу вас через весь процесс и покажу, как использовать функцию Reduce для передачи информации вверх по иерархии представлений вместо традиционного подхода передачи переменных через окружение.
Чтобы сделать урок более практичным и увлекательным, я приведу четыре примера на протяжении всего видео. Некоторые из этих примеров могут показаться надуманными, но они служат цели демонстрации истинного потенциала ключей предпочтений. Вы получите четкое понимание их возможностей и того, как их можно эффективно интегрировать в ваши собственные приложения.
К концу этого урока вы получите четкое представление о SwiftUI PreferenceKeys и о той огромной пользе, которую они привносят в ваш рабочий процесс разработки.
Если вы хотите поддержать мою работу, вы можете купить мне кофе :)
https://ko-fi.com/stewartlynch
Содержание:
0:00 Введение
1:06 Ключ настроек NavigationTitle
4:21 Пример 1
11:04 Пример 2
15:18 Пример 3 - Практическая функция Reduce
17:11 Пример 4 - С GeometryReader
Файлы стартового проекта:
(Если у вас возникли проблемы с загрузкой zip-файлов, используйте Safari. Chrome по умолчанию ограничивает загрузку zip-файлов)
https://www.createchsol.com/StarterPr...
Завершенный проект:
https://github.com/StewartLynch/Swift...
Упомянутые в видео ссылки:
Пользовательские значения среды в SwiftUI
• Custom Environment Values in SwiftUI
Другое Ссылки:
YouTube-канал Стюарта Линча:
/ @stewartlynch
Стюарт Линч на Mastodon:
https://iosdev.space/@StewartLynch
Стюарт Линч в Twitter:
/ stewartlynch
Стюарт Линч в LinkedIn:
/ stewartlynch