Hallo,
ich habe hier ein Problem welches ich einfach nicht gelöst bekomme.
Glaubt mir, so eine harte Nuss hatte ich noch nie…
Da ich nach Tagen? aber nicht weiter komme, versuche ich hier mein Glück
Nachfolgend eine hoffentlich verständliche Beschreibung.
Ich lade einen RootViewController über einen NavigationsController.
Hinter dem RootViewController, welcher ein UITableViewController ist, stecken weitere Controller. Alles in die Richtung hinter dem RootViewController funktioniert. Z.B. das Auslösen über die Methode "didSelectRowAtIndexPath".
Wird der RootViewController verlassen soll er sein erstelltes Dictionary zurück an den MainViewController geben. Von dort wird später ein anderer Controller darauf zugreifen.
Eigentlich soll er direkt das Dictionary aus dem MainViewController verwenden. Dazu benötigt ich aber auf den MainViewController Zugriff.
Und genau das ist mein Problem!
Dat klappt einfach net!
Derzeit führe ich im RootViewController ein eigenes Dictionary. Damit habe ich im Moment die Funktionalität des RootViewControllers abgedeckt. Sonst würde alle weiteren Aktionen nicht funktionieren.
Zum Verständnis:
Zwischen dem MainViewController und dem RootViewController steckt noch ein ConfigViewController.
D.h. im MainViewController wird der ConfigViewController gestartet. In diesem kann ich auf das Haupt-Dictionary im MainViewController zugreifen.
Aus dem ConfigViewController wird jetzt über die Methode loadPhoto der Navigationscontroller geladen, der sich mit dem RootViewController initialisiert.
Der Zugriff vom ConfigViewController auf den MainViewController funktioniert über eine Property.
Im MainViewController starte ich den ConfigViewController folgendermaßen:
So weit so gut.
Wenn ich den Aufruf in loadPhoto so mache wie beim ConfigViewController, komme ich an das Dictionary im MainViewController dran.
Aber...
Dann besteht das Problem dass einmal mein UITableViewController im RootViewController denn kompletten Screen vom iPhone nutzt. D.h. nix mehr mit Navigationsbar, etc.
Außerdem erfolgt dann keine Reaktion mehr auf das Betätigen einer Zeile im UITableViewController. Delegate, aber wie?
Leider bekomme ich weder das eine noch das andere komplett hin.
Die Durchführung mit dem UINavigationsController scheint mir einfacher zu sein. Allerdings komme ich da ja auch nicht weiter
Also gerade ganz schlechte Karten...
Jetzt hoffe ich darauf dass mir jemand bei dem Problem helfen kann.
Mittlerweile könnte ich auch sagen beten.
Gruß
Chris
ich habe hier ein Problem welches ich einfach nicht gelöst bekomme.
Glaubt mir, so eine harte Nuss hatte ich noch nie…
Da ich nach Tagen? aber nicht weiter komme, versuche ich hier mein Glück
Nachfolgend eine hoffentlich verständliche Beschreibung.
Ich lade einen RootViewController über einen NavigationsController.
Hinter dem RootViewController, welcher ein UITableViewController ist, stecken weitere Controller. Alles in die Richtung hinter dem RootViewController funktioniert. Z.B. das Auslösen über die Methode "didSelectRowAtIndexPath".
Wird der RootViewController verlassen soll er sein erstelltes Dictionary zurück an den MainViewController geben. Von dort wird später ein anderer Controller darauf zugreifen.
Eigentlich soll er direkt das Dictionary aus dem MainViewController verwenden. Dazu benötigt ich aber auf den MainViewController Zugriff.
Und genau das ist mein Problem!
Dat klappt einfach net!
Derzeit führe ich im RootViewController ein eigenes Dictionary. Damit habe ich im Moment die Funktionalität des RootViewControllers abgedeckt. Sonst würde alle weiteren Aktionen nicht funktionieren.
Zum Verständnis:
Zwischen dem MainViewController und dem RootViewController steckt noch ein ConfigViewController.
D.h. im MainViewController wird der ConfigViewController gestartet. In diesem kann ich auf das Haupt-Dictionary im MainViewController zugreifen.
Aus dem ConfigViewController wird jetzt über die Methode loadPhoto der Navigationscontroller geladen, der sich mit dem RootViewController initialisiert.
Quellcode
- - (IBAction)loadPhoto
- {
- UINavigationController *controller = [[[UINavigationController alloc] initWithRootViewController:[[RootViewController alloc] init]] autorelease];
- controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
- [self presentModalViewController:controller animated:YES];
- }
Der Zugriff vom ConfigViewController auf den MainViewController funktioniert über eine Property.
Im MainViewController starte ich den ConfigViewController folgendermaßen:
So weit so gut.
Wenn ich den Aufruf in loadPhoto so mache wie beim ConfigViewController, komme ich an das Dictionary im MainViewController dran.
Aber...
Dann besteht das Problem dass einmal mein UITableViewController im RootViewController denn kompletten Screen vom iPhone nutzt. D.h. nix mehr mit Navigationsbar, etc.
Außerdem erfolgt dann keine Reaktion mehr auf das Betätigen einer Zeile im UITableViewController. Delegate, aber wie?
Leider bekomme ich weder das eine noch das andere komplett hin.
Die Durchführung mit dem UINavigationsController scheint mir einfacher zu sein. Allerdings komme ich da ja auch nicht weiter
Also gerade ganz schlechte Karten...
Jetzt hoffe ich darauf dass mir jemand bei dem Problem helfen kann.
Mittlerweile könnte ich auch sagen beten.
Gruß
Chris