Переформулирую задачи, которые я поставил перед собой перед проектированием приложения.
- Мгновенный ввод величины счета и отображение результата
- Максимально простой и "чистый" вид
Мысль пошла стандартным путем: пользователь выделяет поле и получает специально адаптированную для него клавиатуру. Цифры для счета. Список процентов и варианты округления для чаевых.
Дополнительной кнопкой стала быстрая настройка вычитать налог из счета или не вычитать.
Но программе не хватало возможности разделения счета. С одной стороны такая возможность нужна не каждый раз, а с другой стороны нередко она оказывается довольно полезной.
Я обдумал вариант со списком людей и внесением стоимости каждого блюда для каждого человека. Но пришел к выводу, что пишу программу для людей на отдыхе, а не для бухгалтеров и отказался от данного функционала.
Поэтому я просто добавил еще одно поле в котором можно было ввести число людей. Но, разделить счет просто на 4 мне показалось недостаточно. Компания могла состоять из 2 пар или из трех человек вместе и еще одного. Поэтому я решил добавить все возможные сочетания для введенного числа людей и сразу посчитать разделение счета и для них.
В подобной реализации получался элегантный список: первая строка - деление на выбранное число людей - это обычный результат, который есть во всех программах. Вторая строка - деление для двух человек, третья для тех и так далее. Если первую строку выводить на экран всегда, а остальные строки пользователь может выдвинуть из-за края экрана в случае необходимости, то получается изящное и логичное решение.
Все идеи я воплотил в эскиз экрана. Тут я экспериментировал с текстурой подложки, глубиной тени и общей цветовой гаммой (в итоге все равно остановившись на своей любимом сочетание синего с желтым).
Единственной сложностью реализации стал вытягиваемый из-за края экрана список. Это не стандартный элемент UI, но никакой особой сложности в его реализации я не ожидал. Но получил. Это были проблемы с определением нужной высоты и с рисованием фона. Доведя элемент до удовлетворительного состояния, я не стал заканчивать приложение, отложив его, как выяснялось позднее, на пол года.
На данном этапе "Чаевые" по сути были еще стандартным калькулятором с одной простой и правильной идеей - клавиатура и одной идеей оригинальной, но спорной - вытягиваемое деление счета.
В подобной реализации получался элегантный список: первая строка - деление на выбранное число людей - это обычный результат, который есть во всех программах. Вторая строка - деление для двух человек, третья для тех и так далее. Если первую строку выводить на экран всегда, а остальные строки пользователь может выдвинуть из-за края экрана в случае необходимости, то получается изящное и логичное решение.
Все идеи я воплотил в эскиз экрана. Тут я экспериментировал с текстурой подложки, глубиной тени и общей цветовой гаммой (в итоге все равно остановившись на своей любимом сочетание синего с желтым).
Эскиз основного экрана |
На данном этапе "Чаевые" по сути были еще стандартным калькулятором с одной простой и правильной идеей - клавиатура и одной идеей оригинальной, но спорной - вытягиваемое деление счета.
Комментариев нет:
Отправить комментарий