Ich habe eine Drill-Down-Navigations-App mit drei Ebenen von UIViewControllern. In jedem View-Controller habe ich ein UITextField, in dem ich versuche, das UIKeyboard für jeden zu untergliedern. Meine Frage ist, wo man Benachrichtigungen "setzt" und "unset" sie.
Ich habe die Benachrichtigungen:
%Vor%also ist es am besten, sie im viewDidLoad-Event zu setzen? Oder das viewWillAppear-Ereignis?
Und ebenso für [[NSNotificationCenter defaultCenter] removeObserver:self];
Ich möchte nicht, dass mehrere keyboardWillShow:
Ereignisse aufgerufen werden, während ich einen Drilldown ausführe.
Vielen Dank, Brett
Ich schlage vor, dass Sie diese in die Methoden init
und dealloc
einfügen, da die viewWillAppear
und viewWillDisappear
jedes Mal aufgerufen werden, wenn die Ansicht erscheint oder verschwindet , was unnötig ist Benachrichtigungen registrieren / abmelden.
Ich würde jedoch vorschlagen, dass Sie sich in viewWillAppear
als Beobachter registrieren und in viewWillDisappear
abmelden, da viewDidUnload
nur aufgerufen wird, wenn Speicher freigemacht werden muss, was bedeutet, dass viewDidLoad
viel häufiger aufgerufen wird als viewDidUnload
und Dann haben Sie möglicherweise das Problem, dieselbe Benachrichtigung mehrmals zu erhalten.
Tags und Links objective-c iphone uikeyboard