? ? ? ? 現在手機的分辨率越來越高。iphone6的分辨率達到750*1334,nexus6p的分辨率更是達到了驚艷的1440*2560。但是這并不意味著一個寬度1440的PC版網頁可以在nexus6p上正常顯示。這是為什么呢?這個問題和邏輯分辨率和物理分辨率的關系有關。
物理分辨率:顯示屏的最佳分辨率,即屏幕實際存在的像素行數乘以列數的數學表達方式,是顯示屏固有的參數,不能調節,其含義是指顯示屏最高可顯示的像素數。物理分辨率也叫標準分辨率,是指LED顯示屏顯示的圖像原始分辨率,也叫真實分辨率。和物理分辨率對應的是壓縮分辨率,決定圖像清晰程度的是物理分辨率,決定顯示屏的適用范圍的是壓縮分辨率。物理分辨率即LED液晶板的實際分辨率,在LED液晶板上通過網格來劃分液晶體,一個液晶體為一個像素點。那么,輸出分辨率為1024×768 時,就是指在LED液晶板的橫向上劃分了1024個像素點,豎向上劃分了768個像素點。物理分辨率越高,則可接收分辨率的范圍越大,則顯示屏的適應范圍越廣。通常用物理分辨率來評價LED顯示屏的檔次。
邏輯分辨率,則是頁面上抽象的像素點的多少,其單位為dpi(dot per inch),其大小和UI設計者有關。
在最初的時代(iphone3G),物理分辨率和邏輯分辨率是一致的,這意味著假如以320*480為畫布大小,UI設計中的每個像素點對應著屏幕上的每個像素點。而到了iphone4時代,隨著硬件技術的提高,物理分辨率達到了邏輯分辨率的3倍。這意味著假如以320*480為畫布大小,一個UI設計里的像素點在屏幕里對應著4個像素點。這意味著更加細膩的顯示,也就是Retina屏。
到了現在的時代,物理分辨率已經可以達到邏輯分辨率的3倍以上。這也是為什么我們之前推薦以1080*1920配合3倍倍率畫安卓頁面,因為在安卓規范里是以360*640為基準邏輯分辨率來定義dp和sp的,1sp和1dp相當于是360*640分辨率下的1px。為了配合硬件的發展,達到更加細膩的效果,我們推薦使用1080*1920的分辨率作為UI設計的分辨率,而此時的1dp和1sp自然等于1px*倍率即3px。