Печатание во время анимации UITextView - PullRequest
2 голосов
/ 28 июля 2011

Я пытаюсь получить UITextView переменной высоты, который меняет размер, чтобы вместить его содержимое, но когда кадр изменяется в анимации изменения размера, одно или два нажатия клавиш не фиксируются в UITextView.Продолжительность анимации составляет 0,1 с, и обычно она пропускает только одну букву, когда вы печатаете достаточно быстро.Это, однако, очень последовательно в пропущенных буквах, когда происходит анимация.В сообщении textViewDidChange встречается следующий блок анимации: делегат:

[UIView animateWithDuration:0.1 animations:^{

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

}];

Я гуглил и искал на SO, но пока ничего не пришло.Кто-нибудь еще сталкивался с этим?

1 Ответ

11 голосов
/ 28 июля 2011

По умолчанию анимации UIView отключают взаимодействие с пользователем для анимированного представления, поэтому, возможно, (извините, не могу сейчас это проверить) явное включение взаимодействия с пользователем решит вашу проблему:

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