Этот код прекрасно работал в ios 7. Однако с ios8 и xcode 6.0.1 он перестает работать. Когда пользователь нажимал текстовое поле для ввода текста, поле было анимировано, чтобы плавать чуть выше верхней части клавиатуры, чтобы они могли видеть, что они печатают. Любые мысли о том, почему это не работает сейчас. Я вижу, что он начинает оживляться в течение секунды секунды, но затем текстовое поле исчезает. Разочарование.TextField анимация сломана ios8
- (void)textFieldDidBeginEditing:(UITextField *)textField {
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDelegate:self];
[UIView setAnimationDuration:0.4];
[UIView setAnimationBeginsFromCurrentState:YES];
textField.frame = CGRectMake(textField.frame.origin.x, (textField.frame.origin.y - 200.0),
textField.frame.size.width, textField.frame.size.height);
_searchBtn.frame = CGRectMake(_searchBtn.frame.origin.x, (_searchBtn.frame.origin.y - 200.0),
_searchBtn.frame.size.width, _searchBtn.frame.size.height);
[UIView commitAnimations];
textField.alpha = .75;
}
Кажется, что у вас такая же проблема, как у следующего парня http://stackoverflow.com/questions/26045048/how-to-implement-newsfeed-comment-page-similar-to-facebook-or-instagram. Возможно, на его вопрос есть ответы на ваши вопросы. Если в его вопрос входит ваш, вы должны перенести его, чтобы привлечь к нему больше внимания. Но я думаю, что его вопрос поможет вам немного. Например, ваш 200 жестко запрограммирован. Но вместо этого вы должны следить за уведомлением клавиатуры, чтобы вы могли извлечь высоту. Для теста попробуйте изменить число до 250 и посмотреть, что произойдет. –
Спасибо, что ответ, Консоль. Я пробовал адаптировать код к фактической высоте клавиатуры динамически, но все равно не повезло. Я также попытался сыграть с этими цифрами. Большое вам спасибо за ваши предложения. У кого-то должен быть ответ на это! – hansoac