Я пытаюсь повернуть UIImageView со следующим кодом:Фанки поведение при анимации вращения UIImageView
var x = -((self.needleImage.frame.size.width/2) - 15) //x for rotation point
UIView.animateWithDuration(5.0, delay: 10.0, options: nil, animations: {
var transform = CGAffineTransformMakeTranslation(x, 0)
transform = CGAffineTransformRotate(transform, CGFloat(-M_PI_2))
transform = CGAffineTransformTranslate(transform, -x, 0)
self.needleImage.transform = transformm
Конечное положение правильно, но во время анимации/вращения, изображение немного сдвинуты слева, прежде чем оседать в нужном месте.
Я пробовал тот же код с UIView от this, и он этого не делает.
Затем я попробовал обернуть изображение в окне просмотра и повернуть его, но это тоже не помогло.
Я нарисовал цифру точки поворота, чтобы проверить, не находится ли она в нужном месте, но кажется, что все в порядке.
Информация о бонусе: чем больше я поворачиваю, тем больше сдвиг. – ellonde
Возможно, центральная ось не совсем в центре? Это приведет к почти «спирали», которая будет увеличиваться с большими оборотами. – Cole
Можете ли вы подробно остановиться на этом? как я могу это проверить? – ellonde