iOS 9 Orientation Auto-Rotation Animation Not Work

2020-02-14 01:58发布

iOS 9.0 (13A340) Xcode 7.0 (7A220) OS X 10.10.5 (14F27)

I have a situation where if I rotate the simulator or device (using iPhone 6s sim and iPhone 6+ device), the animation does not also take place. I am unsure of why this is happening. I am not doing anything unusual or crazy with any UIKit methods, and I am not calling any method not on the main thread. Additionally, other UIView animations I have added appear to work just fine. It is just the rotation that's broken. Other apps seem fine. I'm not sure what I could be doing wrong.

No rotation animation

Attempts to figure out/solve:

  • Used this extension by Cocoanetics to attempt to see if any UIKit execution was not on the main thread.
  • Printed out the value of UIView.areAnimationsEnabled() during multiple spots in program execution. It always printed true.
  • Setting UIView.setAnimationsEnabled(true) did not fix.

I am using a custom "nav" view controller (one I made): SASlideDrawer (Note I am not experiencing this same issue with this project alone)

Thank you.

4条回答
对你真心纯属浪费
2楼-- · 2020-02-14 02:22

I'm facing a similar bug. http://imgur.com/gallery/Q3OXCIH

The rotation animation occurs for the status bar (which has the clock and the battery icon), but the view itself just changes size, it doesn't do the page flip animation.

This is somewhat repeatable- at first, the rotation occurs correctly, but after I programmatically change the tab view controller index, it can trigger. After it triggers, the rotation animation does not occur for the view until after I reset the app.

Code where I change the tab view controller and then change it back:

[appDelegate.tabBarController setSelectedIndex:0];
...code to operate on the code at index 0...
[appDelegate.tabBarController setSelectedIndex:2];
查看更多
手持菜刀,她持情操
3楼-- · 2020-02-14 02:27

I did change the general setting, and solved this by deleting the Main Interface and Launch Screen File to empty.

查看更多
We Are One
4楼-- · 2020-02-14 02:32

I'm instantiating my own view controller stack of a navigation controller in app delegate. I fixed the problem by removing the Main interface from the project file.

查看更多
Anthone
5楼-- · 2020-02-14 02:38

In my case I had target's "Main Interface" set and in application:didFinishLaunchingWithOptions: I have been creating new window and new rootViewController

查看更多
登录 后发表回答