From the very simple piece of code below, I have a strange behavior difference between iOS 7 and 8 when rotating :
- On iOS 7 the keyboardWillShow and keyboardWillHide are called only one time each.
- On iOS 8 the keyboardWillShow and keyboardWillHide are called two times each.
I have created a very simple project to ensure that it was not a side effect of my main project, but it is not.
Is it a documented behavior difference ?
Regards. Sébastien.
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillShow:)
name:UIKeyboardWillShowNotification
object:self.view.window];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillHide:)
name:UIKeyboardWillHideNotification
object:self.view.window];
}
- (void)viewDidDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(void)keyboardWillShow:(NSNotification*)notification
{
NSLog(@"Keyboard will show.");
}
-(void)keyboardWillHide:(NSNotification*)notification
{
NSLog(@"Keyboard will hide.");
}
@end
Sébastien I think you should add keyboard notification in the viewDidLoad() and then try again, hope it will help you.