<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ***** **dp + dimens 適配** [TOC=6] 我們總是在xml布局里寫dp,dp到底是什么意思呢? 這是Android開發中特有的一種度量,稱作屏幕無關像素,它不表示任何具體的長度或者像素點,這個值只有在具體屏幕密度的手機上,才會被轉換為具體的像素值。 它跟px不一樣,咱們在xml里面寫上px,那無論運行到任何設備上,就是固定的px,不會發生什么變化,但是dp就不一樣了。 比如拿以下幾種來說明一下。 | 分辨率(px) | 系統密度(dpi) | | --- | --- | | 240x320 | 120 | | 320x480 | 160 | | 480x800 | 240 | | 720x1280 | 320 | | 1080x1920 | 480 | 1dp轉換的px是多少呢? 其實就跟dpi有關,而基準線是160dpi,這就意味著1dp在320x480這款手機上就是1px,在480x800是1.5px,720x1280上是2px,1080x1920上是3px。 這就是dp。 比如現在有這么個需求,要求一個控件的寬度占屏幕的一半,我們用dp怎么來實現呢? 首先進行計算,比如320x480,它的寬是320個px,那我們就要寫160px,用dp來表示就是160dp。所以我們可以在xml布局里寫160dp就可以了,同樣的方式試一試其他的手機: 比如240x320,你寫160dp在這種手機上轉換的px就是 160dp\*120/160 = 120px,所以在這種手機上160dp代表的就是120px,剛好是240的一半,也能適配。 再來試一試480x800,想在這種手機上也占一半,必須是240px,而咱們寫的是160dp,它轉換的px就是 160dp\*240/160=240px,剛好也能符合需求。 其實Google出dp這個東西本身就能達到適配的概念,你看,咱們寫了一個160dp,跑到這幾種手機上都能達到需求,這不就是適配了嗎? 但是我之所以提出來了,就說明dp并不能保證完美適配,比如咱們試試720x1280。 720的一半是360px,而咱們寫的160dp,轉換的px是160dp\*320/160=320px,明顯就不是一半,差了40px。也就是說咱們的代碼運行到這種手機上的時候就沒有適配好,沒有達到需求。 再試試1080x1920的,同樣的計算,160dp\*480/160=480,而1080的一半是540,480跟540差了60px,也不行,沒有達到需求。 由此可見,當在240x320,320x480,480x800上面的時候寫160dp是正常的,可以滿足需求。而在720x1280,1080x1920上面卻不能完美適配。 問題拋出來了,該怎么解決這個問題呢? ![](https://box.kancloud.cn/d2e9b0afd51bb71ce8a588ddc99e7833_686x1206.webp)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看