LWUIT, как создать собственную метку для заголовка формы - PullRequest
4 голосов
/ 16 марта 2012

Я хочу знать, как создать метку, содержащую два значка, по одному на каждой стороне, и установить ее в качестве строки заголовка для элемента формы (виджеты LWUIT).

enter image description here

Ответы [ 3 ]

3 голосов
/ 19 марта 2012

Вы можете просто добавить компонент в северную часть экрана, который является рекомендуемым способом, который будет работать правильно и не сломается для новых версий LWUIT / Codename One .

Если вы не установите заголовок, он будет работать, и вы можете присвоить ему UIID заголовка.У LWUIT 1.5 и новее есть контейнер TitleArea, но я советую вам держаться подальше от него, поскольку CodenameOne настраивает его довольно много для iOS / Android 4.x и т. Д.

3 голосов
/ 22 марта 2012

Форма имеет функцию для получения titleArea, тогда вы можете поместить некоторые компоненты, что вы хотите.

Form f = new Form();
Container c = f.getTitleArea();
Label iconLabel1 = new Label("leftIcon");//using Image
Label iconLabel2 = new Label("rightIcon");//using Image
c.addComponent(BorderLayout.WEST, iconLabel1);
c.addComponent(BorderLayout.EAST, iconLabel2);
0 голосов
/ 16 марта 2012

Используйте метод setTitleComponent(Label title).


РЕДАКТИРОВАТЬ:

Получите класс Label и реализуйте метод paint, где вы можете использоватьGraphics метод рисования Image с и текстов.Также установите текстовую позицию метки на Label.CENTER.

...