HeroRandomizer – это iOS приложение, которое позволяет просматривать случайных супергероев, получать подробную информацию о них и сохранять понравившихся в избранное. Приложение построено с использованием SwiftUI/UIKit для создания современного и отзывчивого интерфейса.
- Функциональность
- Cтруктура проекта
- Установка и запуск
- Использование
- Дополнительные сведения
- Лицензия
-
Случайный супергерой:
При нажатии на кнопку «Generate a Hero» приложение делает запрос к API супергероев и отображает случайного супергероя с изображением и информацией. -
Детальный просмотр:
На экране детального просмотра (HeroDetailView) отображается изображение супергероя, его основные атрибуты и дополнительные данные, такие как полное имя, место рождения, первое появление, характеристики (интеллект, сила, скорость) и прочее. -
Избранное:
Пользователь может добавлять супергероев в избранное, нажимая на кнопку-сердечко в детальном просмотре. Избранные супергерои сохраняются с использованием UserDefaults и отображаются на отдельном экране (FavoritesView).
Здесь также реализована возможность удаления избранных через свайп. -
Удобный UI:
Приложение использует кастомные компоненты, такие как LoadingView для индикатора загрузки, что улучшает визуальное восприятие и UX.
HeroRandomizer ├── App │ ├── HeroRandomizerApp.swift │ ├── AppDelegate.swift │ └── SceneDelegate.swift | └── ContentView.swift ├── Model │ ├── SuperHeroModels.swift │ └── FavoritesManager.swift │───── View ├── Favorites │ ├── FavoritesView.swift │ └── FavoriteDetailView.swift ├── Hero │ ├── HeroView.swift │ ├── HeroDetailView.swift │ └── HeroInfoView.swift └── LoadingView.swift └── SuperHeroViewModel.swift
-
Клонируйте репозиторий:
git clone https://github.com/yerass11/HeroRandomizer.git cd HeroRandomizerОткройте проект в Xcode:
Дважды кликните по файлу
HeroRandomizer.xcodeprojЗапустите проект:
Выберите симулятор или подключенное устройство и нажмите
Run(Cmd+R).
-
Главный экран (HeroView):
После запуска приложения вы видите template photo. Нажмите кнопку «Generate a Hero», чтобы загрузить супергероя. -
Избранное:
Вкладка Favorites показывает список добавленных супергероев. Если список пуст, отображается сообщение с иконкой, информирующее пользователя, что избранное пусто. Также предусмотрена возможность удаления героя через свайп в списке.
- API:
Данные о супергероях загружаются с использованием Superhero API.