Animation of CGAffineTransform in iOS8 looks different than in iOS7
CGAffineTransformIdentity behaves differently on ios7 and ios8. This has to do with auto-layout and size classes. The solution is to remove constraints that conflict with the animation on ios7.
// solve the constraint-animation problemif(NSFoundationVersionNumber <= NSFoundationVersionNumber_iOS_7_1) { // iOS7 remove constraints that conflict with animation if (self.centerYAlignment != nil) { self.view.removeConstraint(self.centerYAlignment) //is an IBOutlet }} else { // iOS8 constraint animations are fine}
I think the reason is just iOS8 bug, but I use CAAnimation instead, and it works as expected on iOS8.
I had problems with jerky rotation transform in iOS7 as well. Solved this by nesting my rotated view inside a container and centering the rotated view inside.