Android: как добавить кнопку или текстовое поле на холсте - PullRequest
0 голосов
/ 07 июля 2010

Я делаю холст и устанавливаю его фон, который является изображением. Я добавляю текст на холсте.Метод Drawtext, который теперь работает отлично. Я хочу, чтобы этот текст был кликабельным, но я не смог найти какой-либо метод

Другой метод, о котором я мог подумать, - это добавить текстовое поле на холст, добавить запись по событию клика этого текста.окно, но не смог найти ни одного примера, связанного с этим, кто-нибудь может подсказать, что делать.

Ответы [ 2 ]

0 голосов
/ 15 декабря 2013

Используйте метод onTouchEvent. Вот пример, который я использовал для выяснения того, находятся ли координаты щелчка пользователя в списке прямоугольников (или кнопок):

@Override
public boolean onTouchEvent( MotionEvent event) {
         super.onTouchEvent(event);

            int x = (int)event.getX();
            int y = (int)event.getY();
            xStored = x; yStored=y;
            if (event.getAction()==MotionEvent.ACTION_UP){

           }else if(event.getAction()==MotionEvent.ACTION_DOWN){
               System.out.println("Touching down!");
                   for(Rect rect : rectangles){
                        if(rect.contains(x,y)){
                            System.out.println("Touched Rectangle, start activity."+x+","+y);

                                invalidate();
                     }else{

                     }
                   }


               }else if(event.getAction()==MotionEvent.ACTION_MOVE){

               }
              this.postInvalidate();
             return true;
          }
0 голосов
/ 07 июля 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...