2012-04-12 2 views
1

habe ich eine Funktion in viewWillAppear in meinen Ansicht-Controller, so dass es jedes Mal, wenn die Ansicht geladen läuft:Wie führe ich eine Funktion aus, wenn eine Ansicht angezeigt wird, aber nicht, wenn eine Warnmeldung geschlossen ist?

- (void)viewWillAppear:(BOOL)animated 
{ 
    [self initBasicSettings]; 
} 

jedoch initBasicSettings die Funktion jedes Mal ein modales Warnfeld (UIAlertView) als auch geschlossen ausgeführt wird was ich nicht will.

Wie kann ich eine Funktion ausgeführt werden, wenn eine Ansicht Lasten nicht aber, wenn ein Warnfeld schließt? Wenn diese beiden Ereignisse nicht voneinander getrennt werden können, habe ich das Gefühl, dass es kein orthogonales Design ist.

Antwort

1

Unter der Annahme, dies ist kein Witz Frage. Dieser Methodenstub wird standardmäßig in neue Unterklassen UIViewController eingefügt.

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view from its nib. 
} 
+0

Richtig, danke. Die Sache ist: 'viewDidLoad' wird einmal aufgerufen, egal wie oft die Ansicht geladen wird. Ich möchte weiterhin, dass die Aktionen in 'viewDidAppear' jedes Mal aufgerufen werden, wenn eine Ansicht geladen wird. Ich möchte jedoch nicht, dass sie auftreten, wenn eine Benachrichtigungsbox geschlossen wird. –

+0

Ich bin ein bisschen verwirrt durch zwei Punkte. 1) 'viewDidLoad' * wird * jedes Mal aufgerufen, wenn die Ansicht geladen wird. Also nehme ich an du meinst .. erscheint? geschoben? 2) Wenn ich ein Beispielprojekt und präsentiere eine 'UIAlertView' und entlässt es mir nicht bekommen, eine der„Erscheinung Anrufe“, die Sie scheinen zu bekommen. Vielleicht hilft Ihnen ein Code, vor allem, wenn Sie den Alarm anzeigen. Ein dritter Punkt, mehr wirklich ein Seitenpunkt, sollte in dem Code, den du gepostet hast, '' super viewWillAppear: animated] 'heißen. – NJones

0

Diese Bilder werden Ihr Konzept von viewWillAppear & löschen viewWillDisappear auch funktioniert, wenn Ansichtshierarchie zu betrachten, hinzugefügt oder aus Sicht Hierarchie entfernt.


Bild für Ansicht - wenn zur Ansichtshierarchie hinzugefügt.

enter image description here


Bild für Ansicht - wenn aus Sicht Hierarchie entfernt.

enter image description here

Verwandte Themen