Libgdx: лучший способ узнать, когда что-то коснулось - PullRequest
0 голосов
/ 15 февраля 2012

Допустим, у меня есть изображение 128x128.

Какой самый простой способ узнать, что к этому изображению прикоснулись / нажали?

Возможен ли путь только через получение координат x и y?

Ответы [ 4 ]

0 голосов
/ 15 февраля 2012

Какой именно класс вы имеете в виду:

  • com.badlogic.gdx.scenes.scene2d.actors.Image
  • com.badlogic.gdx.scenes.scene2d.ui.Image

?

Может быть, вы имеете в виду использование изображения в классе Sprite?

Пожалуйста, предоставьте больше информации.Существуют разные подходы.

Например, класс com.badlogic.gdx.scenes.scene2d.actors.Image имеет реализацию логики его геометрии, и вы должны только переопределить ее TouchUp метод и добавьте свою логику здесь.

0 голосов
/ 15 февраля 2012

Вы можете использовать для изменения:

 imgResult.setOnTouchListener(new OnClickListener() {           
                public void onClick(View v) {    
        System.out.println("Somethog is touched");    
      }    
    });
0 голосов
/ 15 февраля 2012

Вам следует расширить класс Canvas.

Переопределить метод OnDraw () и создать зону точки для вашего изображения.

Точка [] [] points = новая точка [5] [5] Тогдаположите его (используйте макет отношения) на экран.

Получить зону, где вы касаетесь его.if (указывает [i] [j] == ваше прикосновение (получить координаты)) {

}

0 голосов
/ 15 февраля 2012

Если изображение является частью ViewGroup, я имею в виду представление, то вы всегда можете реализовать OnClickListener и переопределить метод onClick (View v):

public void onClick(View v) {

        switch (v.getId()) {
        case R.id.image_btn:
            // your code goes here.
            break;

        default:
            break;
        }

    }

Надеюсь, это поможет

...