ich eine Benachrichtigung auf viewDidLoad UIKeyboardWillShowNotification erschaffe und es auf viewwilldisappear entfernen.iOS - UIKeyboardWillShowNotification genannt mehrere Male, wenn Sperrbildschirm
Wenn die Tastatur auf dem Bildschirm erscheint und ihre Benachrichtigung einmal wie erwartet aufgerufen wird, habe ich den Bildschirm gesperrt. Die Benachrichtigung wird mal aufgerufen und unerwünschte Funktionalität erstellt.
Warum die Benachrichtigung aufgerufen wird? Wie kann ich dieses Szenario verhindern?
Ich füge Observer für die Benachrichtigung in viewDidLoad auf diese Weise
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillShow:)
name:UIKeyboardWillShowNotification
object:nil];
EDIT: Gleiche Ergebnisse, wenn ich die App Hintergrund statt Sperre Bildschirm senden.
Sicher werden die Dinge, die Sie gesagt haben, funktionieren. Aber die Sache ist das Hinzufügen von Observer für die Tastatur Benachrichtigung wird einmal in Viewdidload gefeuert und nie wieder initialisiert. viewwilldisappear wird nicht beim Senden der App an den Hintergrund aufgerufen. Das muss bei Apple ein Problem sein. Ich werde Ihre Antwort richtig markieren, wenn ich keine weiteren Antworten auf das genaue Problem bekomme. – Hassy
@ghazi_jaffary Ich schlage vor, Sie debuggen und sehen, welche ViewController-Delegate-Methode aufruft. Wie wenn ViewDidUnload Ihren Fall aufrufen könnte – Mayur
@ghazi_jaffary präsentieren Sie den Viewcontroller wo SieObserver hinzufügen? –