Clickable Object auf SurfaceView

F

flore

Neues Mitglied
1
Hallo Profis,

hab ein Problem bei meinem Spiel und zwar will ich meinen Roboter durch direktes Klicken aus der Surface View auswählen können. Bisher zeichne ich meine Roboter mit canvas.drawCircle(). Darauf kann ich natürlich keinen onClickListener setzen.

Welche Möglichkeiten habe ich??


Vielen Dank.
 
Du kannst auf dem Surface-Voew onClick setzen - da du genau weiß (hoffentlich)
wo sich dein Roboter gerade befindet ist es ein Kinderspiel rauszufinden ob du drauf gecklickt hast
 
Danke für deine Antwort.
Bisher habe ich das über onTouch gelöst. Ich bekomme die x und y Koordinaten und kann nun sehen ob sich ein Roboter darauf befindet.

Das Problem daran ist, dass die Karte is zu einem gewissen Grad skaliert wird, falls das Spielfeld mal größer sein sollte als das Display. Ab einem gewissen Wert dann, wird die Autosklaierung wieder ausgeschaltet und die Karte wird scrollfähig.

Nun reicht mir aber die x und y Koordinate nicht mehr aus, um zu bestimmen ob sich auf dieser Koordinate ein Roboter befindet.

Hat jemand noch eine Idee, von mir aus auch ganz andere Ansätze...

Danke.
 
aber du weiß sicherlich die Scroll-Positionen von Karte - da ist es seht leicht von Touch-Koordinaten
zum Kartenkordinaten zu kommen ( viewportOrigin + touchX = kartenposition )
 

Ähnliche Themen

M
  • MikelKatzengreis
Antworten
5
Aufrufe
127
swa00
swa00
B
Antworten
4
Aufrufe
487
bb321
B
Zurück
Oben Unten