GLSurfaceView текстурированный прямоугольник при нажатии кнопки - PullRequest
0 голосов
/ 28 октября 2010

Я просто хочу задать простой вопрос, касающийся GLSurfaceView и нарисованных на нем объектов.Я рисую прямоугольник и привязываю к нему текстуру.Работает отлично.Затем текстурированный прямоугольник, который я рисую, находится в GLSurfaceView.Я рисую объект, похожий на кнопку, для которого я должен знать, нажал ли пользователь на кнопку или нет.

Я представлял себе это так: если пользователь касается экрана, а .y касания находятся в прямоугольнике нарисованного объекта (в моем случае кнопка), мне нужно выполнить еще одну операцию (т.е.изменить другой взгляд или около того ...).Моя идея верна?

Теперь вопрос: как мне обрабатывать взаимодействия с пользователем?И как я могу получить Rect нарисованного объекта (кнопки), отображенного на GLSurfaceView (т.е. Rect (120, 80)), чтобы я мог затем проверить, нажал ли пользователь кнопку или нет?Или есть какой-то другой подход.

Кроме того, меня интересует следующее: я имею в виду сделать мое приложение полностью открытым.Я не буду использовать виды кнопок из Android.Я работаю с большими текстурами, и я думаю, что OpenGL ES - лучший способ сделать это, поскольку анимации с помощью переводов, поворотов и масштабирования намного проще в обращении.Я прав?

Спасибо

1 Ответ

0 голосов
/ 29 октября 2010

Вы можете использовать onTouchEvent, чтобы получить точки x и y, где пользователь касается.

   @Override
   public boolean onTouchEvent(MotionEvent event) {

     float x = event.getX();
     float y = event.getY();

    } 
...