對于初學(xué)者來說,定義一個UI控件的位置與寬度為一個常量矩乐,在iPhone的不同機(jī)型上會呈現(xiàn)出顯示錯位的情況蜜猾。而我們應(yīng)該如何避免這種情況的發(fā)生呢笋籽?
這里個人分享一個屏幕適配的小技巧:根據(jù)屏幕的寬高與固定UI控件的位置與寬度的比例來進(jìn)行適配:
比如我們要設(shè)置一個CGRectMake(x, y, w, h);其中x誊酌,y部凑,w,h為四個常量碧浊。我們可以首先獲取屏幕的寬度與高度:
CGFloat mainScreenW = [UIScreen mainScreen].bounds.size.width;
CGFloat mainScreenH = [UIScreen mainScreen].bounds.size.height;
然后在草紙上計算出當(dāng)前iPhone機(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ù)UI控件所占屏幕比例完成了iPhone的屏幕適配瑞躺。