從一開始寫Android程序,就被告知這些常識(shí)
一、dp(或者dip device independent pixels)
一種基于屏幕密度的抽象單位。在每英寸160點(diǎn)的顯示器上,1dp=1px。不同設(shè)備有不同的顯示效果,這個(gè)和設(shè)備硬件有關(guān)。
二、sp(Scaled Pixels)
主要用于字體顯示,與刻度無關(guān)的一種像素,與dp類似,但是可以根據(jù)用戶的字體大小首選項(xiàng)進(jìn)行縮放。
簡單的說
然后,就沒有然后了,仿佛潛臺(tái)詞就是說,你記住去用就行了.
偶然有一天,當(dāng)我們陰差陽錯(cuò)地將字體寫成了dp,也是可以工作,而且效果和sp一樣.
這時(shí)候,就開始懷疑了,到底有啥區(qū)別呢,dp和sp有什么不同呢?
我們做個(gè)簡單的Sample驗(yàn)證一下,如下,一個(gè)布局代碼
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="18sp" android:text="Hello World! in SP" /><TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="18dp" android:text="Hello World! in DP" />
得到的效果是這個(gè)樣子

但是,當(dāng)我們進(jìn)入系統(tǒng)設(shè)置中修改字體大小時(shí)

再次進(jìn)入之前的界面,發(fā)現(xiàn)了一些不一樣的東西.

由此看來
關(guān)于sp, 文檔 的描述為:
Scale-independent Pixels 主站蜘蛛池模板: 土默特左旗| 望江县| 河曲县| 连江县| 新野县| 固始县| 临清市| 玉山县| 马公市| 霞浦县| 广汉市| 清原| 玉屏| 新乐市| 遂昌县| 丰县| 金门县| 息烽县| 蓬安县| 聊城市| 北宁市| 灵石县| 营山县| 军事| 祁东县| 安吉县| 新竹市| 周宁县| 沈丘县| 济源市| 济南市| 阿鲁科尔沁旗| 白朗县| 崇文区| 莫力| 新干县| 海淀区| 庆元县| 顺昌县| 威远县| 高淳县|