對(duì)于初學(xué)者來(lái)說(shuō),定義一個(gè)UI控件的位置與寬度為一個(gè)常量,在iPhone的不同機(jī)型上會(huì)呈現(xiàn)出顯示錯(cuò)位的情況。而我們應(yīng)該如何避免這種情況的發(fā)生呢?
這里個(gè)人分享一個(gè)屏幕適配的小技巧:根據(jù)屏幕的寬高與固定UI控件的位置與寬度的比例來(lái)進(jìn)行適配:
比如我們要設(shè)置一個(gè)CGRectMake(x, y, w, h);其中x,y,w,h為四個(gè)常量。我們可以首先獲取屏幕的寬度與高度:
CGFloat mainScreenW = [UIScreen mainScreen].bounds.size.width;
CGFloat mainScreenH = [UIScreen mainScreen].bounds.size.height;
然后在草紙上計(jì)算出當(dāng)前iPhone機(jī)型的屏幕比例(這一步的計(jì)算是不顯示的):
CGRectMake(x, y, w, h);
kx = mainScreenW/x;
ky = mainScreenH/y;
kw = mainScreenW/w;
kh = mainScreenW/h;
最后根據(jù)屏幕比例設(shè)置:
CGRectMake(mainScreenW/kx, mainScreenH/ky, mainScreenW/kw, mainScreenH/kh);
*其中的kx,ky,kw,kh是由當(dāng)前的iPhone機(jī)型的寬高計(jì)算得出,是一個(gè)常量。
這樣我們就簡(jiǎn)單的根據(jù)UI控件所占屏幕比例完成了iPhone的屏幕適配。