キーボードのアニメーション時間を設定する方法

animation cocoa-touch iphone keyboard uiview
キーボードのアニメーション時間を設定する方法

うまくいけば、基本的な質問:キーボードがポップアップする速度を変更する簡単な方法はありますか? ViewDidLoadメソッドでこれを行うことができます。

[UIView setAnimationDuration:2.5];

また、キーボードがポップアップする速度(完全に遅い)だけでなく、カーソルアニメーション(完全に遅い)などの他のすべてのアニメーションにも影響します。 キーボードの速度だけをターゲットにする方法はありますか? `[UIView.firstResponder setAnimationDuration:2.5];`は実際には機能しません。

  4  3


ベストアンサー

私は実際にこれが必要だと思う:

// 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が読み取り専用であることをどこかで読んだとき、私はまだ少し混乱しています。 とにかく、これは機能するので、これが私の質問に対する答えだと思います。

1


タイトルとURLをコピーしました