У меня возникло несколько проблем с расписаниями Protect Alarm, которые нужно решить.
**Проблема №1: Неудобный интерфейс выбора времени**
Когда выбираешь время для расписания будильника, появляется окно с выпадающими списками для времени с шагом в 15 минут. Не идеально, но... терпимо. Допустим, ты хочешь 21:00. Если ты нажмёшь "9" на клавиатуре, то получишь только 9:00 утра. Нет способа перейти к другим вариантам времени – 9:15, 9:30 и, самое главное, 21:00. Чтобы выбрать 21:00, нужно прокручивать все варианты времени. Это требует доработки. Кроме того, в редких случаях прокрутка времени не позволяет пройти определённую точку, и окно автоматически возвращается в начало. Это требует принудительного закрытия окна выбора времени и повторной попытки.
Ещё одно неудобство с выпадающим списком: если время начала установлено на 20:00, а ты хочешь изменить его на 21:00, вместо того чтобы начать список с 20:00, он размещается в самом начале списка – с 00:00, и тебе приходится прокручивать все варианты времени, минуя 20:00, чтобы добраться до 21:00.
Я считаю, что выпадающий список не идеален из-за того, как он работает. Если невозможно сделать его более интуитивным, лучше использовать несколько выпадающих списков для каждого слота [Ч] [М] [AM/PM] или добавить возможность физически вводить время и автоматически переходить к нужному варианту, или добавить возможность вводить время целиком с помощью текстового поля с выпадающим списком AM/PM (это даст наибольший контроль, но потребует определённого опыта разработки).
**Проблема №2: Слоты времени не учитывают нечётные часовые интервалы**
Допустим, я выбираю интервал с 21:00 до 00:00 – всё работает как ожидалось. Однако, если я выбираю 21:30 до 00:00, оно сохраняется как 21:30 до 23:30.
В другом сценарии, если я выбираю 21:15 до 00:00, оно сохраняется как 21:15 до 23:45.
Дополнительное тестирование для времени начала: если оно не является началом часа, время окончания сохранится в ближайшем доступном интервале.
Например:
* 21:30 до 00:30 сохранится как 21:30 до 23:00
* 21:30 до 00:15 сохранится как 21:30 до 23:45
* 11:45 до 15:15 сохранится как 11:45 до 14:30
Проблема всегда возникает со временем окончания, но только если время начала не является началом часа.
**Проблема №1: Неудобный интерфейс выбора времени**
Когда выбираешь время для расписания будильника, появляется окно с выпадающими списками для времени с шагом в 15 минут. Не идеально, но... терпимо. Допустим, ты хочешь 21:00. Если ты нажмёшь "9" на клавиатуре, то получишь только 9:00 утра. Нет способа перейти к другим вариантам времени – 9:15, 9:30 и, самое главное, 21:00. Чтобы выбрать 21:00, нужно прокручивать все варианты времени. Это требует доработки. Кроме того, в редких случаях прокрутка времени не позволяет пройти определённую точку, и окно автоматически возвращается в начало. Это требует принудительного закрытия окна выбора времени и повторной попытки.
Ещё одно неудобство с выпадающим списком: если время начала установлено на 20:00, а ты хочешь изменить его на 21:00, вместо того чтобы начать список с 20:00, он размещается в самом начале списка – с 00:00, и тебе приходится прокручивать все варианты времени, минуя 20:00, чтобы добраться до 21:00.
Я считаю, что выпадающий список не идеален из-за того, как он работает. Если невозможно сделать его более интуитивным, лучше использовать несколько выпадающих списков для каждого слота [Ч] [М] [AM/PM] или добавить возможность физически вводить время и автоматически переходить к нужному варианту, или добавить возможность вводить время целиком с помощью текстового поля с выпадающим списком AM/PM (это даст наибольший контроль, но потребует определённого опыта разработки).
**Проблема №2: Слоты времени не учитывают нечётные часовые интервалы**
Допустим, я выбираю интервал с 21:00 до 00:00 – всё работает как ожидалось. Однако, если я выбираю 21:30 до 00:00, оно сохраняется как 21:30 до 23:30.
В другом сценарии, если я выбираю 21:15 до 00:00, оно сохраняется как 21:15 до 23:45.
Дополнительное тестирование для времени начала: если оно не является началом часа, время окончания сохранится в ближайшем доступном интервале.
Например:
* 21:30 до 00:30 сохранится как 21:30 до 23:00
* 21:30 до 00:15 сохранится как 21:30 до 23:45
* 11:45 до 15:15 сохранится как 11:45 до 14:30
Проблема всегда возникает со временем окончания, но только если время начала не является началом часа.
