• void fillRect(int х, int у, int width, int height)– рисует залитый прямоугольник (описание параметров см. для drawRect() ).
• void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)– рисует залитый прямоугольник с закругленными углами (описание соответствующих параметров см. для drawRoundRect() ).
• void fillTriangle(int x1, int y1, int x2, int y2, int x3, int y3)– рисует залитый треугольник:
– x1, х2, хЗ– координаты Х первой, второй и третьей вершины треугольника соответственно;
– y1, у2, уЗ– координаты Y первой, второй и третьей вершины треугольника соответственно.
• int getColor()– получает текущий цвет в формате RGB.
• void setColor(int red, int green, int blue)– устанавливает текущий цвет в формате RGB:
– red– интенсивность красного цвета (0-255);
– green– интенсивность зеленого цвета (0-255);
– blue– интенсивность синего цвета (0-255).
Инструментов очень много, и подробное их рассмотрение выходит за рамки этой книги, но, поняв принцип рисования, все, что вам нужно будет, – это обратиться к соответствующей документации.
Создадим код класса GameCanvas. Как уже упоминалось выше, код каждого класса должен находиться в отдельном файле. Так что найдите папку src нашего проекта и создайте там файл GameCanv.java.
Теперь откройте файл с помощью текстового редактора и введите базовый код класса (листинг 6.4).
Листинг 6.4. Базовый код класса
Этот класс пока ничего «не умеет». Для начала нужно создать переменную для хранения объекта Graphics, с помощью которой будет производиться рисование. Затем нужно этот самый объект получить, лучше всего это сделать в конструкторе.
Теперь немного модифицируем метод paintи добавим в него код заливки экрана определенным цветом.
В результате код нашего класса примет вид, представленный в листинге 6.5.
Листинг 6.5. Код заливки экрана определенным цветом
Итак, «холст» объявлен и обучен нехитрым действиям. Теперь нам нужно отобразить его на экране. Для этого доработаем главный класс нашего приложения. Новый код вы можете видеть в листинге 6.6.
Листинг 6.6. Отображение «холста» на экране
Теперь скомпилируйте и запустите приложение. После того как вы нажмете кнопку Launch(Запуск), экран окрасится в серый цвет.
Вы можете поэкспериментировать со значениями параметров метода setColor. Таким образом вы сможете менять цвет заливки экрана. Только помните, что значение каждого параметра должно находиться в пределах от 0 до 255, иначе вы получите ошибку компиляции.
Доработаем метод paintкласса GameCanvи добавим на экран немного фигур. Новый код метода вы можете видеть в листинге 6.7.
Листинг 6.7. Добавление фигур
При запуске программы экран будет выглядеть так, как представлено на рис. 6.26.
Рис. 6.26.Геометрические фигуры на экране эмулятора.
«Научим» объект двигаться. У класса GameCanvasсуществует метод keyPressed(int keyCode). Он срабатывает, когда пользователь нажимает какую-либо клавишу на телефоне. Причем параметр keyCodeсодержит код нажатой клавиши, так что вы без труда определите, что именно было нажато.
Для хранения координат объекта (в нашем случае кружка) воспользуемся переменными и будем их менять, когда пользователь нажмет на клавишу джойстика.
Ниже представлены числовые коды клавиш джойстика (табл. 6.1).
Таблица 6.1.Коды клавиш
При рисовании кружка не будем задавать координаты жестко, а укажем, что они содержатся в переменных Xи Y. В листинге 6.8 представлен полный код класса GameCanv.
Листинг 6.8. Полный код класса GameCanv

Поэкспериментируйте с различными фигурами. Проявите творчество!
Читать дальше
Конец ознакомительного отрывка
Купить книгу