鴻洋android螢幕適配四部曲 傳送門

2021-09-12 08:07:59 字數 588 閱讀 1635

螢幕解析度查詢

這樣,我嘗試用一句話來說明白px和dp的關係,以及為什麼要使用兩種單位。

android手機市場因為還沒有完全壟斷的企業出現,所以螢幕的種類相當多,所以需要一種自適應單位,讓同乙個單位長度在所有手機上顯示的物理尺寸完全一樣(注意,是物理尺寸,舉個例子,希望實現同乙個長度在所有手機上顯示的長度都為1厘公尺,這樣的效果),這樣的效果單純使用px是不可能達到的,所以才需要引入dp。看一下公式:

– ppi = √(長度畫素數² + 寬度畫素數²) / 螢幕對角線英吋數

– dp*ppi/160 = px。比如1dp x 320ppi/160 = 2px

再明白不過了,ppi是兩者之間的橋梁,那麼ppi是什麼呢,是螢幕上對角線上每一英吋所對應的畫素數目。通過ppi就能將螢幕畫素和實際物理長度進行掛鉤了。那麼為什麼還需要乙個160引數呢?我嘗試揣摩設計者的初衷,我們在設計介面,設定長度的時候往往希望設定整數值對吧,設定個0.0023這種長度其實很尷尬的不是嗎,所以取了乙個折衷值,讓dp值既不會太大也不會太小。

MySQL學習四部曲

網際網路時代,關聯式資料庫中mysql的使用最為廣泛,從而造就了大量的mysql從業人員。曾經使用oracle的網際網路巨頭阿里系也進行了去ioe化,也影響了更多的人想去學習mysql,從事mysql方面的工作。我是從四年前開始接觸mysql的,從之前的工程師工作,到現在的架構工作,再到偶爾的dba...

MySQL學習四部曲

互聯 網時代,關聯式資料庫中mysql的使用最為廣泛,從而造就了大量的mysql從業人員。曾經使用oracle的網際網路巨頭阿里系也進行了去ioe化,也影 響了更多的人想去學習mysql,從事mysql方面的工作。我是從四年前開始接觸mysql的,從之前的工程師工作,到現在的架構工作,再到偶爾的 d...

MySQL學習四部曲

網際網路時代,關聯式資料庫中mysql的使用最為廣泛,從而造就了大量的mysql從業人員。曾經使用oracle的網際網路巨頭阿里系也進行了去ioe化,也影響了更多的人想去學習mysql,從事mysql方面的工作。我是從四年前開始接觸mysql的,從之前的工程師工作,到現在的架構工作,再到偶爾的dba...