Ergebnis 1 bis 3 von 3
  1. #1
    Gloster
    Themenstarter

    Registriert
    02.2009
    Beiträge
    61

    Frage NSMutableArray fehler

    Hi Leute,
    nachdem ich mich in letzter Zeit intensiv mit Cocoa und dem iPhone SDK auseinander gesetzt habe, habe ich beschlossen ein kleines App zu entwickeln:
    Ihr kennt bestimmt alle das Spiel Blockimpact, also das Spiel wo man mit einer Kugel die obere Reihe freischießen muss. Naja egal.
    Ich bin jetzt dabei mit der Kugel die Steine zu entfernen, dafür hab ich folgende methode geschrieben:

    Code:
        
    for (Steine *images in [anzeige subviews]) {
            NSLog(@"%i",[felder count]);
            if([felder containsObject:images])
            {
                NSLog(@"----> %@ %@ - Retain Count: %i",@"images.name", images.fileName, [images retainCount]);
            
                //if ([[images fileName] isEqualToString:@"stein.png"])
                if (CGRectContainsRect([images frame], [ball frame])) {
                    [images setHidden:YES];
                    [images removeFromSuperview];
                }
            }
        }


    anzeige = UIView
    Steine = subclass von UIImageView
    felder = NSMutableString mit allen Feldsteinen
    fileName = Property von der Steine Klasse
    ball = UIImageView

    So jetzt folgendes Problem:
    Ich versuche herauszufinden ob das Object ein "Steine" Object ist. Images kann anscheinend auch die Superklasse annehmen, also UIImageView und demnach auch UIView, was ich nicht verstehe aber gut. Jetzt hab ich versucht mit [felder contains...] herauszufinden ob es wirklich ein Stein-Element bzw Object ist. Jedoch kann die Felder Variable (die auch als Property gemacht wurde) nicht gefunden werden, bzw. nur leer...
    Falls ihr eine Alternative zur Lösungs des Problemes habt herauszufinden, welches Object gerade berührt wird, bitte ich um diese Information

    mfg
    Pöhli

  2. #2
    Empire
    Registriert
    02.2011
    Ort
    Kamp-Lintfort
    Alter
    21
    Beiträge
    90
    Du kannst das doch ganz einfach machen um zu Prüfen ob es ein Stein ist. Weise doch jedem Img. eine bestimmte Beschreibung / Eigenschaft zu. Z.b. Stein.jpg hat die Eigenschaft Zerstörbar = FALSE, dann musst du nur noch beim durchlauf der Schleife prüfen ob das jeweilige Obj. Zerstörbar ist oder nicht

    Oder poste mal das gesamte Projekt dann zeige ich dir was ich meine.
    - iMac 27" i7-2600K, 4GB DDR3, 6970M 2GB, 1TB mid(2011)

  3. #3
    Gloster
    Themenstarter

    Registriert
    02.2009
    Beiträge
    61
    Vielen Dank, aber das hätte nicht geklappt... Wie gesagt er sammelt auch die UIViews raus und hat damit diese Eigenschaft nicht... Aber ich hab jetzt einen Weg gefunden: mit isMemberOfClass:
    Trotzdem würde ich gerne wissen warum er auch die UIImageViews mit einbezieht? Und dann noch, warum ich die globale Variable felder nicht weiterverwenden kann. Nur um nächstes Mal wenn ich vor so einem Problem stehe, verstehe warum das nicht geht.
    Was ich noch vergessen habe zu sagen:
    Wenn ich es in der DidFinishLauching Methode aufrufe funktioniert es, aber nicht bei meinem Accerometer vielen Dank

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •