• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Navigation Controller ohne Application Delegate

TheNman

Grahams Jubiläumsapfel
Registriert
28.06.08
Beiträge
104
Hallo,

ich habe ein kleines Problem mit meiner App. Ich habe die App so verändert, dass der Navigation Controller nicht mehr in der Application Delegate deklariert wird. Wenn ich nun den Navigation Controller pushe und somit den die neue Seite angezeigt wird, wird das animated YES nicht übergeben und somit die Funktion (void)viewWillAppear:(BOOL)animated nicht ausgeführt.

Nun meine Frage: Muss ich für den Navigation Controller in einem normalen File eine eigene Delegate erstellen, damit dass wieder funktioniert?

Ich poste noch etwas Code und hoffe, dass ihr mir helfen könnt.

#import <UIKit/UIKit.h>

@class FSMBNewsViewController;
@class FSMBNewsDetailController;


@interface FSMBView : UIViewController {
IBOutlet UIWindow *window;
UINavigationController *navigationController;

}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;

-(IBAction) backView;

@end

#import "FSMBView.h"

@implementation FSMBView

@synthesize window;
@synthesize navigationController;

- (void)viewDidLoad {
[window addSubview:navigationController.view];
[super viewDidLoad];
}

....

@end
 

Poljpocket

Salvatico di Campascio
Registriert
07.01.07
Beiträge
432
Aber das View wird angezeigt? Es könnte sein, dass du vergessen hast, den NavigationController eine View zuzuordnen. Nur so eine Vermutung... Diese Methode gehört nämlich zu UIViewController (Superklasse von UINavigationController). Der sollte diese 'empfangen' können, wenn seine View angezeigt werden soll.

Gruss ppocket
 
  • Like
Reaktionen: TheNman

TheNman

Grahams Jubiläumsapfel
Registriert
28.06.08
Beiträge
104
Hey, vielen Dank ich habs aber mittlerweile schon hinbekommen ;)

Und für alle, die vielleicht auch noch drüber stolpern (secondViewController ist der gepushte View):

Code:
	self.secondViewController.view;
	[self.secondViewController viewWillAppear:YES];
	[self.navigationController pushViewController:secondViewController animated:YES];
	[tableView deselectRowAtIndexPath:indexPath animated:YES];