2011-07-27 9 views
2

私は、その内容に合わせてサイズを変更する可変高さのUITextViewを作成しようとしていますが、フレームがサイズ変更アニメーションで変化すると、UITextViewに1回または2回のキーストロークは取り込まれません。アニメーションの継続時間は0.1秒です。通常は、かなり速く入力しているときに1文字しか表示されません。しかし、アニメーションが発生すると、文字の欠落が非常に一貫しています。以下のアニメーションブロックはtextViewDidChange内で発生する:アニメーション中にタイピングするUITextView

[UIView animateWithDuration:0.1 animations:^{ 

    [textView setFrame:CGRectMake(...)]; 

}]; 

私はGoogleで検索してSO上で検索、これまでのところ、何も来なかったしました:メッセージを委任します。他に誰かがこれに遭遇しましたか?

+0

あなたはそれをせずにどのように見えるかしようとしないのはなぜアニメーション?それは悪く見えないかもしれないし、ユーザとして、私はいつでもキーストロークを失わないためにアニメーションをトレードするだろう。 – EmilioPelaez

答えて

11

デフォルトではUIViewのアニメーションがアニメーション表示のためのユーザーの操作を無効にするので、おそらく(申し訳ありません、今それをテストすることはできません)、明示的にユーザーとの対話を有効にすると、あなたの問題を解決します:

[UIView animateWithDuration:0.1 
     delay:0.0 
     options: UIViewAnimationOptionAllowUserInteraction 
     animations:^{  
      [textView setFrame:CGRectMake(...)]; 
     }  
     completion:^(void){}]; 
+0

信じられないほど迅速な対応のために、ありがとう、ウラジミール。それは美しく働いた。 – Jacob

関連する問題