Класс Font
Основным классом в программе из листинга 6.13, иллюстрирующей работу со шрифтом, является класс MainClassFont. Весь код программы построен на использовании класса List создающем список элементов. В строке кода:
Image[] icon = null
Создается переменная для хранения массива изображений. Конкретно в этом примере будут использованы маленькие иконки, загружаемые каждому элементу списка. Всю группу элементов представляет объект my list класса List. В методе startApp () происходят основные действия по созданию списка элементов, загрузке изображения и назначению шрифта каждом элементу списка. В четырех строках кода:
Image imaged = Image.createlmage("/icond.png"); Image imagel = Image.createlmage("/iconl.png"); Image image2 = Image.createlmage("/icon2.png"); Image image3 = Image.createlmage("/iconS.png");
Загружаются четыре различные иконки в виде шариков, окрашенных в синий, красный, зеленый и оранжевый цвет. Все они помещаются в массив:
icon = new Image[]{imaged, image1, image2, image3};
Далее в программном коде создается массив строковых значений:
String[] stroka = {"Синий","Красный","Зеленый","Оранжевый"}.
Теперь пришло время создать шрифты:
Font f0 = Font.getFontfFont.FACE_PROPORTIONAL, Font.STYLE_PLAIN, Font.SIZE_SMALL); Font f1 = Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD, Font.SIZE_MEDIUM); Font f2 = Font.getFont(Font.FACE_MONOSPACE, Font. STYLE_ITALIC, Font. SIZE_LARGE); Font f3 = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_UNDERLINED,Font.SIZE_LARGE);
В этих строках создаются четыре переменные f 0…f 3, содержащие различные по стилю, размеру и начертанию шрифты. С помощью созданных переменных впоследствии будет производиться установка шрифтов для каждого элемента списка. Список элементов представлен объектом mylist и выполнен по типу Exclusive (четыре элемента со своими иконками). В классе List имеется метод setFont () доступный в профиле MIDP 2.0, он и используется в примере.
Создав объект класса List, установим шрифт всем элементам списка:
mylist.setFont(0,f0); mylist.setFont(1,f1); mylist.setFont(2,f2); mylist.setFont(3,f3);
С помощью метода setFont () происходит установка заданного шрифта, содержащегося в переменных f 0… f 3. Назначение шрифта происходит по индексам от 0 до 3 в массиве stroka [ ].
В конце кода происходит добавление команды выхода и отображение текущего экрана на дисплее телефона. На рис. 6.14 представлена работа программы из листинга 6.13.
Рис. 6.14. Эмулятор телефона, на экране которого представлены разные шрифты
К сожалению, ресурсы мобильных телефонов не позволяют воспользоваться обилием шрифтов компьютерной платформы, но и имеющейся базы вполне достаточно цля создания разнообразных текстовых элементов. Использование шрифтов в программах значительно улучшает пользовательский интерфейс и придает приложению более изящный вид.
В следующей главе будет рассматриваться программирование графики в Java 2 ME, с помощью классов низкоуровневого интерфейса.