Напоминания в SwiftUI с EventKit — пользовательский интерфейс, приоритеты и сроки выполнения (рук...
Noah Does Coding
0:00 / 0:00
Напоминания в SwiftUI с EventKit — пользовательский интерфейс, приоритеты и сроки выполнения (рук...
609 просмотров · 7 месяцев назад
Noah Does Coding
5,16 тыс. подписчиков
609 просмотров · 7 месяцев назад
📝 Создайте систему напоминаний со СОБСТВЕННЫМ пользовательским интерфейсом — не клоном приложения «Напоминания» от Apple.
В этом уроке вы интегрируете фреймворк EventKit от Apple для создания, получения, выполнения и удаления напоминаний — но вместо копирования стандартного внешнего вида «Напоминаний» мы создадим пользовательский интерфейс, который можно добавить в любое приложение: трекеры привычек, менеджеры проектов, списки дел, списки покупок — что бы вы ни создавали.
Это дополнение к моему видео об интеграции с календарем (ссылка ниже) — оба используют EventKit, но обращаются к совершенно разным сторонам фреймворка. Если вы смотрели то видео, вы уже знаете модель разрешений. Если нет, не беспокойтесь — здесь мы рассмотрим её с нуля.
🔑 Что вы узнаете:
• Запрос разрешений на создание напоминаний с помощью requestFullAccessToReminders (iOS 17+)
• Создание ReminderManager с использованием async/await fetch и withCheckedContinuation
• Создание напоминаний с указанием сроков выполнения, приоритетов и заметок
• Получение информации о незавершенных и завершенных напоминаниях с помощью отдельных предикатов
• Переключение состояния завершения с помощью isCompleted
• Удаление напоминаний с помощью жестов смахивания
• Полностью настраиваемый пользовательский интерфейс SwiftUI — карточная структура с значками приоритета, а не клон Apple Reminders
🖼 Попробуйте сами!
Клонируйте или скачайте полный демонстрационный проект здесь:
📁 Шаблон демо-версии: https://github.com/NDCSwift/SwiftUIRe...
Видео по интеграции календаря (дополнение): • SwiftUI Calendar Integration — Add, Read &...
📋 Требования:
• Xcode 16+
• Целевая платформа развертывания iOS 17+
• Базовые знания SwiftUI
⏱️ Временные метки:
00:00 — Что мы создаём
01:30 — Настройка проекта и Info.plist для напоминаний
02:23 — Чем напоминания отличаются от событий календаря в EventKit
03:30 — Создание ReminderManager
07:44 — Получение напоминаний с помощью Async/Await
13:00 — Операции CRUD с напоминаниями
19:31 — Создание напоминаний с датами выполнения и приоритетами
24:50 — Разработка Пользовательский интерфейс карточек
33:25 — Подключение ContentView
38:34 — Пользовательский ReminderListView
43:21 — PermissionView
46:22 — CreateReminderView
55:20 — Тестирование, устранение неполадок и распространенные ошибки
58:07 — Заключение
👍 Поставьте лайк, если это сэкономило вам время
#SwiftUI #EventKit #Reminders #iOSDevelopment #Xcode #SwiftUITutorial #iOSTutorial #AppleDeveloper #Swift #TodoApp #CustomUI