1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

Schnitt von zwei ImageViews?

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Extremefall, 24.06.2012.

  1. Extremefall, 24.06.2012 #1
    Extremefall

    Extremefall Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    83
    Erhaltene Danke:
    1
    Registriert seit:
    29.03.2012
    Hallo,
    ich versuche momentan, ein Spiel zu programmieren. Ich habe nun eine Figur, die ich steuere. Nun möchte ich eine Meldung erhalten, sobald die Figur gegen ein Hindernis läuft. Leider klappt es noch nicht. Momentan wird die Meldung auch schon angezeigt, wenn es sich nur in der gleichen Zeile befindet. Die Figuren berühren sich aber auch wirklich nicht.

    Mein Code zur Überprüfung des Schnitts der beiden ImageViews:
    Code:
      ImageView figur = (ImageView)findViewById(R.id.spieler);
    				   ImageView wall = (ImageView)findViewById(R.id.wall);
    				    Rect spieler = new Rect();
    				    Rect hindernis = new Rect();
    
    				    spieler.left = figur.getLeft();
    				    spieler.top = figur.getTop();
    				    spieler.bottom = figur.getBottom();
    				    spieler.right = figur.getRight();
    				    hindernis.left = wall.getLeft();
    				    hindernis.top = wall.getTop();
    				    hindernis.bottom = wall.getBottom();
    				    hindernis.right = wall.getRight();
    				   if (Rect.intersects(spieler, hindernis)){
    Könntet ihr mir sagen, wo der Fehler liegt? Wieso wird es schon als Schnitt erkannt, wenn sich die Figur einfach auf gleicher Höhe befindet? Die beiden ImageViews haben übrigens die gleichen Größe und sind nur horizontal um x Einheiten auseinander.
     
  2. swordi, 24.06.2012 #2
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    hmm ich vermute mal deine imageview wird größer sein, als es sichtbar ist.

    zeig mal deinen xml code.
     
    Extremefall bedankt sich.
  3. Extremefall, 24.06.2012 #3
    Extremefall

    Extremefall Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    83
    Erhaltene Danke:
    1
    Registriert seit:
    29.03.2012
    Der Hinweis war Gold wert. Vielen Dank. Ich habe das Objekt erst mittels Padding verschoben, anstatt margin zu verwenden. Dadurch wurde es natürlich größer. Jetzt klappt es auch wie gewünscht.
     

Diese Seite empfehlen