官方发布的iphone6和iphone6 plus 分辨率提高了,项目中需要使用3倍的图片。但是比例依旧是16:9。
以前的项目直接用xcode6.0.1打开,使用iphone6或iphone6 plus 的模拟器调试,打印出屏幕的宽高依旧320*568。欣喜的以为不需要做任何设置,ios8会自动处理。但是在新创建一个项目后......iphone6的宽高不再是320*568,界面也不好了,需要重新适配了。
但是为什么旧的项目在iphone6打印的宽高为320*568,而在xcode6.0.1创建的项目在iphone6打印的宽高却不是320*568呢?我猜测应该是在配置文件中做了些改动吧。于是上网查找解决办法,并没有找到原因,只是知道了旧项目会自动放大以适应iphone6的屏幕。
既然靠不了别人,旧靠自己吧,最后发现,在General-App Icons and Launch Images 下的 Launch Images Source 和 Launch Screen File 有变化。于是改成和旧项目一样的值后,调试,打印宽高,又变成320*568了。又不需要适配屏幕了。
虽然是解决了,但我猜测这并不是完美的。始终还是使用Auto Layout 做适配比较符合苹果的风格。
另外,把宽高都设置成320*568后在iphone6上会被等比拉伸,画质会有影响。
在ios8以下的项目启动画面会读取Launch Images Source中的图片。
在ios8以上会优先读取Launch Screen File设置的xib,如果没设置,则读取Launch Images Source中的图片。
在ios8以上如果有设置Launch Screen File,则iphone6的分辨率会正常显示。如果没设置Launch Screen File,则根据Launch Images Source中的图片大小显示,所以才有了在iphone6下打印出来的大小依然是320*568。如果在Launch Images Source中没有设置图片,还有可能为320*480。