Примечание. Я очень склонен к API Blackberry.
Прошло много времени с тех пор, как я работал над Blackberry (версия 5).) программное обеспечение, поэтому мой совет может быть полностью устаревшим.(Я думаю, что я работал над версией 5).
Предоставленные компоненты были совершенно неадекватны для всего, что нам нужно было сделать, чтобы иметь индивидуальный внешний вид, поэтому мы использовали подход переопределения класса Manager для создания пользовательских компонентов.
//Garbage code from a dead project
/* (non-Javadoc)
* @see net.rim.device.api.ui.Manager#paint(net.rim.device.api.ui.Graphics)
*/
protected void paint(Graphics graphics) {
if(style == Spinner.DRAW_ROUNDED_RECTANGLE)
drawRoundedRectangluar(graphics);
else
drawRectangular(graphics);
}
Остальная часть этого мусора, поэтому я только публикую идею ее
Если вы расширяете работающую кнопку и заменяете метод рисования (мало чем отличается от работы с Swing, кроме бесконечно более мучительного) в принципе вы можете делать все, что захотите.Это даст вам возможность масштабировать изображение и делать все, что вам нужно.
Однако я надеюсь, что Blackberry обновил их API за последние несколько лет.Этот проект был болезненным и занимал примерно в 10 раз больше работы, чем нужно для выполнения того, что, как вы думали, нужно.
Кроме того, события должны (ed?) Потребляться на устройстве, иначе они будут автоматическираспространять (возвращать true для слушателей, чтобы указать, что событие используется).
Не зная версию и точный API, я боюсь, что не могу помочь, кроме как сказать, что я настоятельно рекомендую придерживатьсяАбсолютные минимальные требования, поэтому он переносится на все устройства ИЛИ пытается выполнить приложение через мобильный веб-интерфейс (не всегда вариант).Я обнаружил, что Blackberry был трясиной во время разработки, и я отказался от нее.
Работая с ней, я обнаружил, что написание картины с нуля было быстрее, чем попытка заставить их компоненты работать последовательно, это выполнимо, и 95% учебных пособий по свингу будут переведены с минимальной дополнительной работой.
(Кроме того, SWT немного лучше подходит для API, вы должны проверить это в Eclipse - и, если вы не используете Eclipse для разработки Blackberry, поднимите это во время работы.Инструменты RIM из коробки были ужасны.)