My UIView не двигается вверх, когда клавиатура отображается и исчезает, когда клавиатура также скрыта.UIView не продвигается, когда отображается клавиатура AutoLayout
Это кодирование в ViewDidLoad
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardDidShow:) name:UIKeyboardDidShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardDidHide:) name:UIKeyboardDidHideNotification object:nil];
и это кодирование для остальных.
- (void)keyboardDidShow:(NSNotification *)note
{
[self animateTextField:TRUE];
}
- (void)keyboardDidHide:(NSNotification *)note
{
[self animateTextField:FALSE];
}
-(void)animateTextField :(BOOL)up
{
const int movementDistance = -130; // tweak as needed
const float movementDuration = 1.0; // tweak as needed
int movement = (up ? movementDistance : - movementDistance);
[UIView beginAnimations: @"animateTextField" context: nil];
[UIView setAnimationBeginsFromCurrentState: YES];
[UIView setAnimationDuration: movementDuration];
_buttonsView.frame = CGRectOffset(_buttonsView.frame, 0, movement);
[UIView commitAnimations];
}
Вы, используя автоматическую компоновку? вы не можете напрямую изменить рамку или центр, если автоматический макет включен – 0yeoj
@ 0yeoj yap, я использую autolayout, таким образом, любое решение тогда, PLS? – ppshein
@ 0yeoj может у пост полный ответ? – ppshein