2015-04-08 6 views
0

У меня есть UItextField в последней ячейке UITableView. Мой код для обработки клавиатуры скрытие:Как оживить обратно UITableView на клавиатуре скрыть?

func keyboardWillBeHidden(aNotification:NSNotification) { 
     let contentInsets: UIEdgeInsets = UIEdgeInsetsZero 
     tableView.contentInset = contentInsets 
     tableView.scrollIndicatorInsets = contentInsets 
} 

отлично работает на iOS8 с плавной анимацией. Вернется в исходное положение на iOS7 (без анимации)!

Какое решение на iOS7?

+2

Вы пробовали поместить все в блок анимации? – Dare

+1

Попробуйте поместить свой код в UIView. + animateWithDuration: delay: опции: анимация: завершение: функция. –

ответ

1

Я бы попробовал это первым. Отрегулируйте продолжительность анимации в соответствии с вашими предпочтениями.

UIView.animateWithDuration(0.2, animations: {() -> Void in 
      let contentInsets: UIEdgeInsets = UIEdgeInsetsZero 
      self.tableView.contentInset = contentInsets 
      self.tableView.scrollIndicatorInsets = contentInsets 
     }) 
1

Я сделал это раньше. Его цель в. Проверьте это -

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

    NSTimeInterval duration = [[[sender userInfo] objectForKey:UIKeyboardAnimationDurationUserInfoKey] doubleValue]; 

    [UIView animateWithDuration:duration animations:^{ 
     UIEdgeInsets edgeInsets = UIEdgeInsetsZero; 
     [_tableView setContentInset:edgeInsets]; 
     [_tableView setScrollIndicatorInsets:edgeInsets]; 
    }]; 
} 
Смежные вопросы