Splash screen animation is not supporting with Xcode 7 GM(iOS9). App crashes with an error

◇◆丶佛笑我妖孽 提交于 2019-12-04 13:31:45

问题


In my application i am using the below code to show an animated splash screen. App working fine in Xcode-6.4(iOS 8), but coming to Xcode-7GM version(iOS9) app crashes with an error.

window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    imageArray = [[NSMutableArray alloc] initWithCapacity:IMAGE_COUNT];
    // Build array of images, cycling through image names
    for (int i = 1; i <= IMAGE_COUNT; i++)
     [imageArray addObject:[UIImage imageNamed:
                               [NSString stringWithFormat:@"image__%d.png",i]]];
    animationImageView  = [[UIImageView alloc]  initWithFrame:self.window.bounds];
    animationImageView  .animationImages=[NSArray arrayWithArray:imageArray];
    // One cycle through all the images takes 3.5 seconds
    animationImageView .animationDuration = 3.5;
    // Repeat forever
    animationImageView  .animationRepeatCount = 0;
    // Add subview and make window visible
    [window addSubview:animationImageView  ];
    [window makeKeyAndVisible];
    // Start it up animations
    [animationImageView   startAnimating];
    // Wait 3.5 seconds, then stop animation
   [self performSelector:@selector(stopAnimation) withObject:nil afterDelay:3.5];`

This is the error message what i am getting while using Xcode-7GM:

Assertion failure in -[UIApplication _runWithMainScene:transitionContext:completion:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3505.16/UIApplication.m:3294


回答1:



    window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

change to


    [window setFrame:[[UIScreen mainScreen] bounds]];




回答2:


It sounds like you're trying to do some networking. In iOS 9, by default, all network communication must be secure. If you are trying to do an http: request, it will fail; you must use https: (unless you switch this feature off in your Info.plist).




回答3:


I had the same issue, it has been solved by removing [window makeKeyAndVisible];.

The self window needs to be set as root view controller in your didFinishLaunchingWithOptions: :
[self.window setRootViewController:navController];




回答4:


For me like jonmo, this error was the result of not defining rootViewController prior to exiting didFinishLaunchingWithOptions.

Doing so resolved this issue for me.

Prior to Xcode 7, it was just a warning now it seems to be a hard stop




回答5:


In my case, the solution to this error message was updating an included CocoaPods dependency called Loopback (that I believe adds an extra UIWindow to the app.)




回答6:


I had the same issue, It has been solved by replacing the below line of code in Appdelegate.m

[window addSubview:viewController.view];

with

[window setRootViewController:viewController];


来源:https://stackoverflow.com/questions/32538671/splash-screen-animation-is-not-supporting-with-xcode-7-gmios9-app-crashes-wit

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!