Bitmap eines Objektes auslesen

  • Hallo Leute!
    habe mich soeben im Forum hier angemeldet und habe bereits jetzt die erste Frage^^


    Da ich nicht genau weiß, wie ich in Google danach suchen sollte (Bitmap etc. nichts gefunden), frage ich euch nun:


    Wie kann man das Bild, die Graphik (oder wie auch immer :P ) mit einem Objekt vergleichen? Ein Objekt kann bei mir 2 verschiedene Bilder haben, welche per Zufall generiert werden.


    Code
    if (graphic.SPUCKGraphic() == BitmapFactory.decodeResource(getResources(), R.drawable.kugel1)) {
    	//Code}



    Nur der Code wird nie ausgeführt. Versuche zum testen auch immer ein finish(); in den Text zu setzen, damit ich sicherstellen kann, dass es nicht am Rest des Codes liegt :P


    Ich kann mir schon vorstellen, dass diese Abfrage nie wahr sein wird, denn soviel wie ich verstehe wird hier abgefragt ob die bitmap von "graphic" gleich einer neu erstellten Graphik ist? Immerhin verwende ich den selben Code zum erstellen eines Objekts :D


    Deshalb wäre eben meine Frage, wie funktioniert das, welche abfrage müsste ich hierfür verwenden?
    Danke schon mal für eure Hilfen :)


    MfG
    Salmii


    EDIT: Vergessen O:-) ... in SPUCKGraphic() steht folgendes drinnen:


    Code
    private Bitmap _bitmap;
    
    
    //...
    public Bitmap SPUCKGraphic() {        return _bitmap;    }
  • Das Bitmap decodieren gibt dir nur eine Referenz zum decodierten Bild zurück, welche niemals identisch sein wird zu einer anderen Referenz desselben decodierten Bildes.
    Leg doch eine int Variable an mit der id des decodierten Bildes, dann kannst du später mit dieser vergleichen, vorallem auch ohne das Bild extra neu zu decodieren.


    Gruss
    antifish

  • Vielen vielen Dank Antifishi! :P


    Es funktioniert bei mir jetzt, nur möchte ich sichergehen:





    War es so gemeint? Ansonsten, bekommt man die ID auch wo anders her?
    MfG

  • Hi Salmii,


    die IDs solltest du nicht hartcodiert in deiner Klasse eintragen auf jedem Gerät sind die nämlich anders.


    Besser ist du machst das so:

    Java
    final int KugelROT = R.drawable.kugelRot;
    final int KugelGRUN = R.drawable.kugelGRUN;


    Mfg Titus

  • Verstehe ich das richtig, dass es da keine Methode graphic.isEqualTo(anotherGraphic) gibt?

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!