Я играл с двумя различными способами создания UIView
анимаций: начало / фиксация и блоки.
Я заметил, что beginAnimations:context:
/ commitAnimations
способ делать вещи - это приятноасинхронный, поддерживая свободный интерфейс во время работы анимации.
Однако я также заметил, что способ animateWithDuration:animations:completion
, кажется, блокирует пользовательский интерфейс, что делает его не отвечающим во время работы анимации.
Я думал, что одним из основных моментов использования блоков является легкое достижение асинхронного выполнения.Почему вариант блоков UIView
анимарионов блокирует пользовательский интерфейс, а вариант начала / фиксации - нет?
Редактировать:
В моем вопросе изначально предполагалось, что блокианимация была синхронной операцией и блокировала пользовательский интерфейс.Как выяснилось из ответа Джеффа Келли, это не тот случай.Мое исходное предположение было неверным, анимация блоков не синхронна.Подробности см. В ответе Джеффа.