1

I have a tab bar app with navigation controller on each tab in landscape mode. It prompts a warning in the console

Using two-stage rotation animation. To use the smoother single-stage animation, this application must remove two-stage method implementations.

Now I override this method (Source : Single-Stage vs Two-Stage Animation for iPhone Apps?)

- (void)willAnimateRotationToInterfaceOrientation:
 UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration
 {
 [super willAnimateRotationToInterfaceOrientation:interfaceOrientation duration:duration];
 }

and the warning is fixed on all tabs, except for one tab if made the first tab of the tab-bar controller. That tab contains MKMapView, ScrollView, some labels,buttons, and few UIImageViews.

The above stated function is added (Overrided) on map controller as well, but still it produce warning of two stage animation.

I just read it on some page that this can also be caused by the MapKit, is there some solution.

Thanks in Advance.

Community
  • 1
  • 1
Sohail
  • 2,058
  • 7
  • 33
  • 57

1 Answers1

0

If the system is causing this warning you can safely ignore it, just make sure that you are using

- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration

everywhere in your code instead of the older (two-stage) methods

- (void)willAnimateFirstHalfOfRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration

and

- (void)willAnimateSecondHalfOfRotationFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation duration:(NSTimeInterval)duration
myell0w
  • 2,200
  • 2
  • 21
  • 25