Чтение онлайн

на главную - закладки

Жанры

Компьютер + мобильник: эффективное взаимодействие
Шрифт:

х – координата Х левого верхнего угла строки;

у – координата Y левого верхнего угла строки;

anchor – тип выравнивания строки.

• void fillArc(int х, int у, int width, int height, int startAngle, int arcAngle) – рисует залитый сектор эллипса (описание параметров см. для drawArc ).

• 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

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

На этом закончим знакомство с языком Java для мобильных телефонов. Вы получили базовые сведения, необходимые начинающему разработчику. Продолжайте изучение этого языка – и скоро сможете писать полноценные игры для мобильных телефонов.

Глава 7

ПЕРЕПРОШИВКА, ОБНОВЛЕНИЕ И ТЕСТИРОВАНИЕ ТЕЛЕФОНА

Поделиться:
Популярные книги

Инквизитор Тьмы 2

Шмаков Алексей Семенович
2. Инквизитор Тьмы
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Инквизитор Тьмы 2

Как притвориться идеальным мужчиной

Арсентьева Александра
Дом и Семья:
образовательная литература
5.17
рейтинг книги
Как притвориться идеальным мужчиной

Неудержимый. Книга IX

Боярский Андрей
9. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга IX

Охота на попаданку. Бракованная жена

Герр Ольга
Любовные романы:
любовно-фантастические романы
5.60
рейтинг книги
Охота на попаданку. Бракованная жена

Де Виан Рейн. Хозяйка Инс-Айдена

Арниева Юлия
2. Делия де Виан Рейн
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Де Виан Рейн. Хозяйка Инс-Айдена

На границе империй. Том 10. Часть 4

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 4

Девочка-яд

Коэн Даша
2. Молодые, горячие, влюбленные
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Девочка-яд

Новик

Ланцов Михаил Алексеевич
2. Помещик
Фантастика:
альтернативная история
6.67
рейтинг книги
Новик

Измена. Не прощу

Леманн Анастасия
1. Измены
Любовные романы:
современные любовные романы
4.00
рейтинг книги
Измена. Не прощу

Бастард Императора

Орлов Андрей Юрьевич
1. Бастард Императора
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Бастард Императора

Кодекс Охотника. Книга XXI

Винокуров Юрий
21. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XXI

Наследник

Майерс Александр
3. Династия
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Наследник

Случайная свадьба (+ Бонус)

Тоцка Тала
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Случайная свадьба (+ Бонус)

30 сребреников

Распопов Дмитрий Викторович
1. 30 сребреников
Фантастика:
попаданцы
альтернативная история
фэнтези
фантастика: прочее
5.00
рейтинг книги
30 сребреников