最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

簡(jiǎn)單談?wù)凙ndroid中SP與DP的區(qū)別

 更新時(shí)間:2016年09月12日 09:04:39   作者:技術(shù)小黑屋  
Android里面的sp和dp網(wǎng)上有很多文章都談過了,但是看后總有一種意猶未盡的感覺?,F(xiàn)在我也來談?wù)刣p和sp,和大家交流一下,不對(duì)之處歡迎拍磚。

從一開始寫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)行縮放。

簡(jiǎn)單的說

  • 長度寬度的數(shù)值要使用dp作為單位放入dimens.xml文件中
  • 字體大小的數(shù)值要使用sp作為單位,也放入dimens.xml文件中

然后,就沒有然后了,仿佛潛臺(tái)詞就是說,你記住去用就行了.

偶然有一天,當(dāng)我們陰差陽錯(cuò)地將字體寫成了dp,也是可以工作,而且效果和sp一樣.

這時(shí)候,就開始懷疑了,到底有啥區(qū)別呢,dp和sp有什么不同呢?

我們做個(gè)簡(jiǎn)單的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)了一些不一樣的東西.

由此看來

  • 使用sp作為字體大小單位,會(huì)隨著系統(tǒng)的字體大小改變
  • 而dp作為單位則不會(huì).

關(guān)于sp, 文檔 的描述為:

Scale-independent Pixels – This is like the dp unit, but it is also scaled by the user's font size preference. It is recommend you use this unit when specifying font sizes, so they will be adjusted for both the screen density and the user's preference.

大致意思為

  • sp除了受屏幕密度影響外,還受到用戶的字體大小影響
  • 通常情況下,建議使用sp來跟隨用戶字體大小設(shè)置

因此通常情況下,我們還是建議使用sp作為字體的單位,除非一些特殊的情況,不想跟隨系統(tǒng)字體變化的,可以使用dp.

相關(guān)文章

  • Android編程實(shí)現(xiàn)自動(dòng)檢測(cè)版本及自動(dòng)升級(jí)的方法

    Android編程實(shí)現(xiàn)自動(dòng)檢測(cè)版本及自動(dòng)升級(jí)的方法

    這篇文章主要介紹了Android編程實(shí)現(xiàn)自動(dòng)檢測(cè)版本及自動(dòng)升級(jí)的方法,涉及Android版本檢測(cè),匹配,下載及自動(dòng)安裝等技巧,需要的朋友可以參考下
    2016-01-01
  • Android獲取RecyclerView滑動(dòng)距離方法詳細(xì)講解

    Android獲取RecyclerView滑動(dòng)距離方法詳細(xì)講解

    RecyclerView是Android一個(gè)更強(qiáng)大的控件,其不僅可以實(shí)現(xiàn)和ListView同樣的效果,還有優(yōu)化了ListView中的各種不足。其可以實(shí)現(xiàn)數(shù)據(jù)縱向滾動(dòng),也可以實(shí)現(xiàn)橫向滾動(dòng)(ListView做不到橫向滾動(dòng))。接下來講解RecyclerView的用法
    2023-01-01
  • Android 中 GridView嵌套在ScrollView里只有一行的解決方法

    Android 中 GridView嵌套在ScrollView里只有一行的解決方法

    本文給大家?guī)韮煞N有關(guān)Android 中 GridView嵌套在ScrollView里只有一行的解決方法,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2016-10-10
  • Android開發(fā)實(shí)現(xiàn)簡(jiǎn)單計(jì)算器功能

    Android開發(fā)實(shí)現(xiàn)簡(jiǎn)單計(jì)算器功能

    這篇文章主要為大家詳細(xì)介紹了Android開發(fā)實(shí)現(xiàn)簡(jiǎn)單計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • 智能指針與弱引用詳解

    智能指針與弱引用詳解

    智能指針有很多實(shí)現(xiàn)方式,android 中的sp 句柄類實(shí)際上就是google 實(shí)現(xiàn)的一種強(qiáng)引用的智能指針。我沒有仔細(xì)看android sp 的實(shí)現(xiàn)方式,但其基本原理是固定的,現(xiàn)在我們從一個(gè)相對(duì)簡(jiǎn)單的例子來看智能指針的實(shí)現(xiàn)
    2013-09-09
  • Android頁面中可編輯與不可編輯切換的實(shí)現(xiàn)

    Android頁面中可編輯與不可編輯切換的實(shí)現(xiàn)

    這篇文章主要給大家介紹了關(guān)于在Android頁面中可編輯與不可編輯切換的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-07-07
  • Android Studio 配置忽略文件的方法實(shí)現(xiàn)

    Android Studio 配置忽略文件的方法實(shí)現(xiàn)

    這篇文章主要介紹了Android Studio 配置忽略文件的方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • Android自定義View實(shí)現(xiàn)照片裁剪框與照片裁剪功能

    Android自定義View實(shí)現(xiàn)照片裁剪框與照片裁剪功能

    這篇文章主要介紹了Android自定義View實(shí)現(xiàn)照片裁剪框與照片裁剪功能的相關(guān)資料,需要的朋友可以參考下
    2016-07-07
  • Android編程實(shí)現(xiàn)XML解析與保存的三種方法詳解

    Android編程實(shí)現(xiàn)XML解析與保存的三種方法詳解

    這篇文章主要介紹了Android編程實(shí)現(xiàn)XML解析與保存的三種方法,結(jié)合實(shí)例形式詳細(xì)分析了Android實(shí)現(xiàn)xml解析的SAX、DOM、PULL三種方法的相關(guān)操作技巧,需要的朋友可以參考下
    2017-08-08
  • Android鍵盤輸入語言設(shè)置默認(rèn)打開myanmar緬甸語的步驟

    Android鍵盤輸入語言設(shè)置默認(rèn)打開myanmar緬甸語的步驟

    如何實(shí)現(xiàn)Android鍵盤輸入語言默認(rèn)打開為myanmar緬甸語,如果要設(shè)置某種語言在輸入法默認(rèn)打開可按一下步驟添加文件,我這里已經(jīng)驗(yàn)證時(shí)OK的
    2013-06-06

最新評(píng)論

缙云县| 江城| 页游| 广水市| 磴口县| 鸡东县| 于都县| 嘉禾县| 麻栗坡县| 涞源县| 四平市| 滁州市| 广昌县| 西峡县| 瑞昌市| 江源县| 军事| 沧源| 安化县| 安泽县| 墨玉县| 宁明县| 日照市| 图们市| 台江县| 兴山县| 崇义县| 昌吉市| 武威市| 泉州市| 社会| 尤溪县| 攀枝花市| 蓬溪县| 巴彦县| 东方市| 图木舒克市| 平果县| 南投市| 松阳县| 信丰县|