1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Attribut Zugriff

Dieses Thema im Forum "OS X-Developer" wurde erstellt von bginner, 28.03.10.

  1. bginner

    bginner Ingrid Marie

    Dabei seit:
    13.12.09
    Beiträge:
    264
    Hallo zusammen,

    ich habe mal zum Testen eine einfach Anwendung geschrieben.
    Diese besteht aus zwei Views (Allerdings ist nur der Consolen-Log von Bedeutung).
    Von der RootView kann ich problemlos auf Attribute der SecondView zugreifen.
    Will ich aber von der SecondView auf Attribute der RootView zugreifen ist alles null.
    Und jetzt weiß ich nicht woran es liegt weil die eine richtung geht..aber die andere nicht.


    Ich hänge das Projekt mal an.
    Wäre toll wenn sich das mal jemand anschauen könnte.
     

    Anhänge:

  2. Poljpocket

    Poljpocket Salvatico di Campascio

    Dabei seit:
    07.01.07
    Beiträge:
    432
    dir fehlt zuerst mal ein nib für den MyTableAppDelegate. Korrigiere das mal und melde dich wieder...

    Ich glaube, im Weiteren machst du die selben Fehler wie auch schon in deinen anderen Threads. Du erstellst sowie im RootViewController als auch im SecondViewController ein neues Objekt, das dann leer ist. Also ist diese Beschreibung:

    ganz logisch. Die RootView erstellt ein neues Objekt, füllt dieses. Dieses SecondView hat aber nicht das ursprüngliche RootView in seiner Instanzvariable, sondern ein neues, leeres.

    Gruss ppocket

    EDIT: Du initialisierst ja nicht mal das Array im RootViewController... das ist dein Fehler! Der Code ist sowieso Mist, wenn ich ganz ehrlich bin... zum Beispiel die Methode initializeArray: was soll das? Solche Dinge gehören ins init!!
     
    #2 Poljpocket, 28.03.10
    Zuletzt bearbeitet: 28.03.10
  3. bginner

    bginner Ingrid Marie

    Dabei seit:
    13.12.09
    Beiträge:
    264
    Dies geschieht mit den Zeilen
    rootArray = [[NSMutableArray alloc]init];
    [rootArray addObject:mad:"First Root Object"];

    Das Hauptproblem war das ich eine neue Instanz des RootViewController erzeugt habe, da hast du recht

    Habe es jetzt hinbekommen, allerdings nur über einen herben umweg. habe jetzt den RootViewController als Parameter einer Funktion an den SecondViewController übergeben und danach einem Attribut zugewiesen welches in der SecondViewController. So geht es zwar aber... ist das totaler schwachsinn oder ist die Lösung ok?

    Wer sich das anschauen möchte kann sich die neue Version runterladen.
     

    Anhänge:

    #3 bginner, 28.03.10
    Zuletzt bearbeitet: 28.03.10
  4. Poljpocket

    Poljpocket Salvatico di Campascio

    Dabei seit:
    07.01.07
    Beiträge:
    432
    Das ist in völliger Ordnung so. Wie willst du sonst dem SecondViewController mitteilen, welches Objekt sein Root ist? Ich würde das alles ja direkt in der init machen. Also -initWithRootView: ... oder so :)

    Gruss ppocket
     

Diese Seite empfehlen