Как установить время анимации клавиатуры - PullRequest
4 голосов
/ 01 апреля 2011

Надеюсь, основной вопрос: есть ли простой способ изменить скорость, с которой всплывает клавиатура? Я могу сделать это в моем методе ViewDidLoad:

[UIView setAnimationDuration:2.5];

И это будет влиять не только на скорость, с которой всплывает моя клавиатура (очень медленно), но и на все другие анимации, такие как анимация курсора (также очень медленно). Есть ли способ нацелить скорость клавиатуры в одиночку? [UIView.firstResponder setAnimationDuration:2.5]; на самом деле не работает.

1 Ответ

1 голос
/ 01 апреля 2011

Я думаю, что мне действительно нужно это:

// Get the duration of the animation.
NSValue *animationDurationValue = [userInfo objectForKey:UIKeyboardAnimationDurationUserInfoKey];
NSTimeInterval animationDuration;
[animationDurationValue getValue:&animationDuration];

// Animate the resize of the text view's frame in sync with the keyboard's appearance.
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:animationDuration];

textView.frame = newTextViewFrame;

[UIView commitAnimations];

Я нашел это в примере кода Apple, иллюстрирующем, как добавить панель поверх клавиатуры.Но я все еще немного сбит с толку, когда читал где-то еще, что animationDuration доступно только для чтения.Во всяком случае, это работает, поэтому я думаю, что это ответ на мой вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...