UIKeyboardFrameBeginUserInfoKey вернет кадр клавиатуры до начала анимации.UIKeyboardFrameEndUserInfoKey вернет кадр клавиатуры после завершения анимации.В качестве примера возьмем следующий фрагмент кода:
NSDictionary* info = [notification userInfo];
CGRect beginFrame = [[info objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue];
CGRect endFrame = [[info objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue];
Если вы напечатаете значения beginFrame
и endFrame
в окне отладки, вы можете найти что-то вроде этого:
(gdb) print beginFrame
$1 = {
origin = {
x = 0,
y = 480
},
size = {
width = 320,
height = 216
}
}
(gdb) print endFrame
$2 = {
origin = {
x = 0,
y = 264
},
size = {
width = 320,
height = 216
}
}
Итак, на iPhone это показывает, что клавиатура будет анимироваться снизу экрана.Размер клавиатуры не изменяется (как и ожидалось), но координаты y показывают начальную и конечную позиции клавиатуры.