iphone手機螢幕大小和像素:
1.iPhone5/5s 320x568,像素640x1136,@2x
2.iPhone6 375x667,像素750x1334,@2x
3.iPhone6 Plus 414x736,像素1242x2208,@3x
舊的項目在xcode6上運作在iphone6或者iphone6 plus上,界面會被放大,适應iphone6和iphone6 plus的大螢幕。這時,若在項目中輸出螢幕的寬高如下:
CGSize size =[[UIScreen mainScreen] bounds].size;
NSLog(@"width=%f height =%f",size.width,size.height)
發現輸出的值還是320和568,說明編譯器隻是對app進行的自動拉伸。
那如何才能讓app不自動拉伸,輸出真正的size?遵循之前适配iphone5一樣,還是修改啟動畫面。但有别于iphone5,現在蘋果提供了一個LaunchScreen.xib作為啟動頁面,是以隻要給舊項目添加LaunchScreen.xib即可。方法如下:
File->new->file->User Interface->Launch Screen
這時舊的工程目錄下就會增加一個,然後再在項目的targets下設定啟動屬性,如下圖
現在,重新運作項目就能打出對應的size。
接下來就是将項目中的320換成size.width.
如果發現适配太麻煩了,可以把LaunchScreen.xib删掉,再把上圖中的Launch Screen File 設成空就換回自動拉伸的效果了。
轉載于:https://blog.51cto.com/89092706/1565635