Странное поведение iOS CGAffineTransform

Я пытаюсь просто анимировать вид из одной позиции в другую, используя приведенный ниже код, но анимация не гладкая. В анимации присутствует «поп». Например, он быстро движется вверх, прежде чем двигаться вниз.

Может ли кто-нибудь сообщить мне, если что-то не так с моей настройкой?

 [UIView animateWithDuration:0.2 animations:^{
            [_label setTransform:CGAffineTransformMake(1, 0, 0, 1, 0, 88)];
            transformState = 1;
   }];

Спасибо за прочтение!

Если у вас есть минутка, пожалуйста, загрузите этот очень простой тестовый проект, чтобы вы могли легко увидеть проблему, и если вы это сделаете, большое спасибо за то, что нашли время.

http://owolf.net/uploads/StackOverflow/TransformTest.zip


person Mr Wolf    schedule 17.02.2013    source источник


Ответы (1)


В вашем контроллере представления включен автомакет в вашей раскадровке, и autolayout может взаимодействовать с преобразованием неожиданным образом.

Либо отключите автомакет, либо рассмотрите возможность использования ограничений автомакета чтобы сделать вашу анимацию.

person Kurt Revis    schedule 17.02.2013