0

UIKeyboard zeigt und versteckt Benachrichtigungsmethode funktioniert gut in iOS8 und höher, aber es funktioniert nicht in iOS7. Gibt es eine Alternative?UIKeyboardWillShowNotification funktioniert nicht unter iOS 7

Mein Ziel für die Anwendungsbereitstellung ist iOS7.

My-Code ist hier

- (void)viewDidLoad 
{ 
[[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(keyboardWasShown:) 
               name:UIKeyboardWillShowNotification 
               object:nil]; 

    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(HideKeyboard:) 
               name:UIKeyboardWillHideNotification 
               object:nil]; 
} 

- (void)keyboardWasShown:(NSNotification *)sender 
{ 
    CGSize kbSize = 
     [[[sender userInfo] objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue].size; 

    if (!scroll) { 
     scrollValue = self.WholeScreenUIView.frame.origin.y - kbSize.height; 
    } 

    scroll = YES; 
} 

- (void)HideKeyboard:(NSNotification *)sender 
{ 

    scroll = NO; 

    scrollValue = 0.0; 
} 

Vielen Dank im Voraus.

+0

Können Sie das näher erläutern auf nicht funktioniert? Wird die Methode in iOS 7 aufgerufen? – rckoenes

Antwort

0

Mit diesem Code ..

[[NSNotificationCenter defaultCenter] addObserver:self 
               selector:@selector(keyboardWillHideHandler:) 
                name:UIKeyboardWillHideNotification 
                object:nil]; 

    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(keyboardWillshowHandler:) 
               name:UIKeyboardWillShowNotification 
               object:nil]; 

- (void) keyboardWillHideHandler:(NSNotification *)notification { 
    [scroll setContentOffset:CGPointMake(0, 0) animated:YES]; 
} 

- (void) keyboardWillshowHandler:(NSNotification *)notification { 
    [scroll setContentSize:CGSizeMake(self.view.frame.size.width, self.view.frame.size.height+44)]; 

} 

Hope this helps.This in meinem Fall arbeitet

+0

Dieser Code ist nicht anders als in Frage, außer dass Sie den Beobachtercode in keiner Methode registrieren. – rckoenes

+0

Vielen Dank für Ihre Unterstützung, der obige Code funktioniert in iOS 8, aber er konnte in iOS 7 nicht funktionieren. FYI: Die Beobachterfunktion wurde in iOS 7 nicht aufgerufen – Sakthi