Данное мобильное приложение позволяет познакомиться с миром анимационного сериала Рик и Морти. Пользователю доступна подробная информация о персонажах, эпизодах и локациях, которые предоставляются сервисом "The Rick and Morty Api".
- Главный экран состоит из нижней навигации с тремя вкладками: персонажи, эпизоды и локации.
- Экран с деталями о персонаже, эпизоде или локации.
- Списки на главных экранах выполнены в виде двух столбцов.
- Фильтрация и поиск данных на главных экранах.
- Обновление данных на каждом экране посредством смахивания сверху вниз (Pull-to-Reresh).
- Кнопка назад на экранах с деталями.
- Скрывание нижней навигации на экранах с деталями.
- Поддержка работы без интернета путём кэширования данных.
- Возможность навигации на предыдущий экран.
- Поддержка пагинации на главных экранах.
- Наличие начального экрана (Splash Screen).
- Отображение прогресс-индикатора в момент загрузки на всех экранах.
- Уведомление для пользователя в случае, если не было найдено данных соотвествующих фильтру.
-
Главный экран - Персонажи.
Данный экран содержит список всех персонажей. Каждый элемент списка отображает следующую информацию о персонаже:
1.1 Фильтрация
По нажатию кнопки раскрывается меню фильтра. Применяется фильтр по кнопке "применить". Сворачивание не приводит к применению фильтра. Аналогично реализован и сброс фильтра.
1.2 Поиск
Поиск работает без использования фильтра и производится только по имени.
-
Главный экран - Эпизоды.
Данный экран содержит список всех эпизодов. Каждый элемент списка отображает следующую информацию об эпизоде:
1.1 Фильтрация
1.2 Поиск
-
Главный экран - Локации.
Данный экран содержит список всех локаций. Каждый элемент списка отображает следующую информацию о локации:
1.1 Фильтрация
1.2 Поиск
-
Детальный экран - Персонаж.
Здесь пользователю доступна полная информация о персонаже с возможностью перехода к локации или к месту происхождения персонажа.
Вдобавок отображается список из эпизодов, в которых персонаж участвовал. Список разворачивается взмахом снизу верх.
-
Детальный экран - Эпизод.
Подробная информация об эпизодах представлена на этом экране.
К тому же доступен список из всех персонажей, относящихся к эпизоду. Расширение происходит аналогично тому, как это реализована на детальном экране персонажа.
-
Детальный экран - Локация.
Детали о локации можно найти здесь.
Помимо деталей локации, присутсвует список из персонажей, которые встречались в локации. Раскрыть список можно аналогичным жестом, как и на экране с деталями о персонаже.
Технология | Использование | Версия |
---|---|---|
Room | Сохранение локальных данных. | 2.5.1 |
Retrofit | Запросы в сеть. | 2.9.0 |
RxJava | Работа с ассинхронным кодом. | 3.1.5 |
Coroutines | Работа с ассинхронным кодом. | 1.8.20 |
Glide | Загрузка изображений. | 4.15.1 |
Dagger 2 | Внедрение зависимостей. | 2.45 |
OkHttp | Перехватчики запросов. | 4.10.0 |
Moshi | Сериализация данных. | 1.14.0 |