欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android手機(jī)屏幕px與dp互轉(zhuǎn)的工具類

 更新時(shí)間:2019年03月28日 09:23:23   作者:徐劉根  
今天小編就為大家分享一篇關(guān)于Android手機(jī)屏幕px與dp互轉(zhuǎn)的工具類,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧

dp(dip): device independent pixels(設(shè)備獨(dú)立像素). 不同設(shè)備有不同的顯示效果,這個(gè)和設(shè)備硬件有關(guān),一般我們?yōu)榱酥С諻VGA、HVGA和QVGA 推薦使用這個(gè),不依賴像素。dp也就是dip,這個(gè)和sp基本類似。如果設(shè)置表示長(zhǎng)度、高度等屬性時(shí)可以使用dp 或sp。但如果設(shè)置字體,需要使用sp。dp是與密度無關(guān),sp除了與密度無關(guān)外,還與scale無關(guān)。如果屏幕密度為160,這時(shí)dp和sp和px是一 樣的。1dp=1sp=1px,但如果使用px作單位,如果屏幕大小不變(假設(shè)還是3.2寸),而屏幕密度變成了320。那么原來TextView的寬度 設(shè)成160px,在密度為320的3.2寸屏幕里看要比在密度為160的3.2寸屏幕上看短了一半。但如果設(shè)置成160dp或160sp的話。系統(tǒng)會(huì)自動(dòng) 將width屬性值設(shè)置成320px的。也就是160 * 320 / 160。其中320 / 160可稱為密度比例因子。也就是說,如果使用dp和sp,系統(tǒng)會(huì)根據(jù)屏幕密度的變化自動(dòng)進(jìn)行轉(zhuǎn)換。

px: pixels(像素). 不同設(shè)備顯示效果相同,一般我們HVGA代表320x480像素,這個(gè)用的比較多。

代碼如下:

import android.content.Context;
public class DensityUtil {
  private static float scale;
  /**
   * 根據(jù)手機(jī)的分辨率從 dp 的單位 轉(zhuǎn)成為 px(像素)
   */
  public static int dip2px(Context context, float dpValue) {
    if (scale == 0) {
      scale = context.getResources().getDisplayMetrics().density;
    }
    return (int) (dpValue * scale + 0.5f);
  }
  /**
   * 根據(jù)手機(jī)的分辨率從 px(像素) 的單位 轉(zhuǎn)成為 dp
   */
  public static int px2dip(Context context, float pxValue) {
    if (scale == 0) {
      scale = context.getResources().getDisplayMetrics().density;
    }
    return (int) (pxValue / scale + 0.5f);
  }
}

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

最新評(píng)論