iOS 问题&解决方法

iOS Xcode运行时上下黑边的解决办法

4s下运行,还是好好的。
Retina(3.5-inch):


iOS 问题&解决方法_第1张图片
屏幕快照 2016-02-18 00.31.32.png

到其他设备上就变了:
Retain(4-inch):


iOS 问题&解决方法_第2张图片
屏幕快照 2016-02-18 00.34.07.png

解决方法:

添加Default.png、[email protected][email protected]三张图片进来,可以加到Supporting Files里。

就加下面三张纯黑的图片,添加后再运行,就没问题了。
Default.png

iOS 问题&解决方法_第3张图片
Default.png

[email protected]


[email protected]


我只是将[email protected]添加到LaunchImage中了如图:

iOS 问题&解决方法_第6张图片
屏幕快照 2016-02-18 00.35.56.png

删除app,Product-Clean,重新运行。

在iOS9 以上运行old Project 提示Application windows are expected to have a root view controller at the end of application launch

在iOS9之前如果没有根视图,即rootViewController = nil,也是可以运行但是会打印出上面那句,做个提示,程序还是可以运行的。iOS9以后如果为nil运行后会崩溃。

当然在真正的项目上根视图控制器肯定不为nil。

解决方法

意思是缺少根视图。添加如下代码即可解决

NSArray *windows = [[UIApplication sharedApplication] windows];
for(UIWindow *window in windows) {
    if(window.rootViewController == nil){
        UIViewController* vc = [[UIViewController alloc]initWithNibName:nil bundle:nil];
        window.rootViewController = vc;
    }
}

真机调试提示pngcrush caught libpng error:

应用在在模拟器上调试一点问题没有,但一放到真机上调试就出现pngcrush caught libpng error: 的错误.

两种解决方法 :

  1. 在build settings里把工程里的Compress PNG files设置为NO,问题解决,但这样设置以后,弄出来的ipa会很大,感觉不是很理想。
  2. mac上的preview(预览)打开出问题的png文件,然后重新导出为png文件或者用photoshop把png图片保存为NOT INTERLACED(不交错)的,这样真机调试时就没有错误了。

你可能感兴趣的:(iOS 问题&解决方法)