Skip to content

Погодный информер на основе api openweathermap.org

Notifications You must be signed in to change notification settings

AlekseiTinkov/openweathermap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 

Repository files navigation

Назначение

Приложение позволяет просматривать информацию о погоде в выбранных географических локациях:

  • текущая погода;
  • погода на день с интервалом 3 часа;
  • погода на ближайшие 16 дней.

В дизайне использована коллекция иконок от Pascal Vleugels https://dribbble.com/pasxal
Поддерживаются темная и светлая темы, а также выполнена локализация (русский и английский языки).

Для получения данных применяется API openweathermap.com Загруженные данные кэшируется в локальных файлах с использованием FileManager. Периодичность обновления кэша - 30 минут.

Экраны приложения

Основной экран

Основной экран выполнен на UIPageViewController, позволяющем листать локации. Независимо от числа локаций приложение использует только три страницы контроллера, обновляемые при пролистывании - предыдущую, текущую и следующую.

На каждой странице отображаются:

  • заголовок с названием локации;
  • информация о текущей погоде;
  • горизонтально прокручиваемая коллекция с почасовым прогнозом погоды на день;
  • вертикально прокручиваемая коллекция с прогнозом погоды на 16 дней.

При пустом списке локаций отображается заглушка, нажатие на которую вызывает диалог добавления локаций.

В левом верхнем углу основного экрана выводится кнопка меню со следующими функциями:

  • добавление локации;
  • удаление локации;
  • редактирование списка локаций;
  • настройки приложения.

Экран добавления локаций

Экран позволяет осуществлять поиск локаций по тексту, набранному в строке поиска.

Экран редактирования списка локаций

Экран позволяет сортировать список локаций и удалять локации из списка.

Экран настроек

Экран позволяет выбрать единицы измерения и указать пользовательский ключ API.

Как запускать

  1. Скопируйте репозиторий
  2. Откройте openweathermap.xcodeproj в Xcode
  3. На вкладке Target > Signing & Capabilities tab
    • укажите свой аккаунт разработчика в поле Team
    • замените Bundle identifier
  4. Выберите симулятор или реальное устройство
  5. Запустите приложение

Требования для развертывания и запуска этого приложения

  • XCode 14.0+
  • iOS 13.0+
  • iPhone (реальное устройство или симулятор)

About

Погодный информер на основе api openweathermap.org

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages