Похоже на настраиваемое поле.
Ваш выбор со встроенными полями:
net.rim.device.api.ui.component.NumericChoiceField
, который в основном действует как выпадающий список с числами в нем (не очень хорошо, когда вы говорите о 60 минутах / секундах, но если вы хотите ограничиться, скажем, 5-минутные интервалы или что-то в этом роде).
net.rim.device.api.ui.component.EditField
с пользовательским net.rim.device.api.ui.text.TextFilter
(вы могли бы использовать NumericTextFilter
, но это не ограничило бы вас 0-60, это позволило бы любые числа).
Или вы можете кататься самостоятельно. См. эту статью , чтобы начать создание пользовательских полей. Вы, вероятно, захотите переопределить navigationMovement
, чтобы увеличить / уменьшить числа при помощи трекбола вверх и вниз, а также переместить фокус в поле, двигаясь влево и вправо - установив внутреннюю переменную состояния, указывающую, где находится фокус, и переопределение getFocusRect
чтобы вернуть соответствующий прямоугольник фокуса (обязательно вызовите focusRemove
и focusAdd
из navigationMovement
, чтобы инфраструктура знала, что вы обновили фокус).