2013-06-19 2 views
0

Я пытаюсь переместить клавиатуру, но я не могу показаться, чтобы получить значение из уведомления ниже мой код и журнал:keyboardWasShown работает, но NSNotification является нулевым

- (void)keyboardWasShown:(NSNotification *)notification 
{ 
    NSDictionary *info = [notification userInfo]; 
    CGSize keyboardSize = [[info objectForKey:UIKeyboardFrameBeginUserInfoKey]  CGRectValue].size; 
    NSLog(@"info dictionary %@", info); 
    NSLog(@"keyboard height: %f", keyboardSize.height); 

журнала:

2013-06-19 15:03:37.777 DepreciationDraft[5822:c07] info dictionary (null) 
2013-06-19 15:03:37.777 DepreciationDraft[5822:c07] keyboard height: 0.000000 

Любые предложения?

+0

что вы пытаетесь сделать с клавиатурой? –

+1

Как вы регистрируетесь на уведомление? – danypata

ответ

0

Если вы хотите, чтобы закрыть клавиатуру, просто сделать: комментарий

[self.view endEditing:YES]; 
+0

И если клавиатура представлена ​​с другого представления, которое не находится в 'self.view'? Также 'keyboardWasShown' не для увольнения, это для показа, и я думаю, что пользователь, возможно, пытается переместить содержимое представления при появлении клавиатуры. – danypata

+0

Да, я был не уверен в том, что он точно спрашивал. –

0

danypata помогли ответить на вопрос.

Когда я добавил наблюдателя в Центр NSNotification, я использовал UITextFieldTextDidBeginEditingNotification вместо UIKeyboardDidShowNotification.

Я не знаю, почему я даже использовал UITextFieldTextDidBeginEditingNotification в первую очередь.

 Смежные вопросы

  • Нет связанных вопросов^_^