Тестовое задание, которое попросили сделать по одной из вакансий. Решил совместить приятное с полезным и попробовать новые AsyncStream, до изучения которых никак руки не доходили. :) Ну и SwiftUI в интерфейсе.
Нужно разработать приложение, состоящее из одного экрана:
Ваша задача:
- Сделать вертикальный список на рандомное количество элементов (больше 100).
- В каждом элементе вертикального списка – горизонтальный список на рандомное количество элементов (больше 10). Каждая ячейка – квадратик с бордером и скругленными углами (произвольный радиус), отображающий случайное число. При тапе на квадратик он должен анимировано уменьшаться на 20% (при тапе уменьшаться, при отпускании возвращаться к прежним размерам) Раз в секунду обновляется одно случайное число во всех горизонтальных списках.
Пожелания: Обратить внимание на производительность решения. Можно не запариваться по поводу переворотов экрана и сохранением стейта.