亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統(tǒng) > Android > 正文

android中px和dp,px和sp之間的轉(zhuǎn)換方法

2019-10-21 21:49:57
字體:
供稿:網(wǎng)友

在Android開發(fā)中dp和px,sp和px之間的轉(zhuǎn)換時(shí)必不可少的,網(wǎng)上流傳的方法

public class DisplayUtils {  /**   * convert px to its equivalent dp   * 將px轉(zhuǎn)換為與之相等的dp   */  public static int px2dp(Context context, float pxValue) {    final float scale = context.getResources().getDisplayMetrics().density;    return (int) (pxValue / scale + 0.5f);  }  /**   * convert dp to its equivalent px   * 將dp轉(zhuǎn)換為與之相等的px   */  public static int dp2px(Context context, float dipValue) {    final float scale = context.getResources().getDisplayMetrics().density;    return (int) (dipValue * scale + 0.5f);  }  /**   * convert px to its equivalent sp    * 將px轉(zhuǎn)換為sp   */  public static int px2sp(Context context, float pxValue) {    final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;    return (int) (pxValue / fontScale + 0.5f);  }  /**   * convert sp to its equivalent px   * 將sp轉(zhuǎn)換為px   */  public static int sp2px(Context context, float spValue) {    final float fontScale = context.getResources().getDisplayMetrics().scaledDensity;    return (int) (spValue * fontScale + 0.5f);  }}

關(guān)于轉(zhuǎn)換公式中,通過類比一元一次函數(shù),怎么看都是有問題的,這么明顯的問題,為什么沒人糾正,后來發(fā)現(xiàn)是自己并沒有理解,原因是float類型在強(qiáng)轉(zhuǎn)為int類型是,用的是去尾法,精度上有較大差異,所以通過+0.5f的方式,將去尾法轉(zhuǎn)變成四舍五入法,提高精度。

調(diào)用TypedValue類實(shí)現(xiàn)轉(zhuǎn)換

/*** convert dp to its equivalent px*/protected int dp2px(int dp){    return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp,getResources().getDisplayMetrics());}/*** convert sp to its equivalent px*/protected int sp2px(int sp){    return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, sp,getResources().getDisplayMetrics());}public class TypedValue {  ...  /** {@link #TYPE_DIMENSION} complex unit: Value is raw pixels. */  public static final int COMPLEX_UNIT_PX = 0;  /** {@link #TYPE_DIMENSION} complex unit: Value is Device Independent   * Pixels. */  public static final int COMPLEX_UNIT_DIP = 1;  /** {@link #TYPE_DIMENSION} complex unit: Value is a scaled pixel. */  public static final int COMPLEX_UNIT_SP = 2;  /** {@link #TYPE_DIMENSION} complex unit: Value is in points. */  public static final int COMPLEX_UNIT_PT = 3;  /** {@link #TYPE_DIMENSION} complex unit: Value is in inches. */  public static final int COMPLEX_UNIT_IN = 4;  /** {@link #TYPE_DIMENSION} complex unit: Value is in millimeters. */  public static final int COMPLEX_UNIT_MM = 5;  /**   * Converts an unpacked complex data value holding a dimension to its final floating    * point value. The two parameters <var>unit</var> and <var>value</var>   * are as in {@link #TYPE_DIMENSION}.   *    * @param unit The unit to convert from.   * @param value The value to apply the unit to.   * @param metrics Current display metrics to use in the conversion --    *        supplies display density and scaling information.   *    * @return The complex floating point value multiplied by the appropriate    * metrics depending on its unit.    */  public static float applyDimension(int unit, float value,                    DisplayMetrics metrics)  {    switch (unit) {    case COMPLEX_UNIT_PX:      return value;    case COMPLEX_UNIT_DIP:      return value * metrics.density;    case COMPLEX_UNIT_SP:      return value * metrics.scaledDensity;    case COMPLEX_UNIT_PT:      return value * metrics.xdpi * (1.0f/72);    case COMPLEX_UNIT_IN:      return value * metrics.xdpi;    case COMPLEX_UNIT_MM:      return value * metrics.xdpi * (1.0f/25.4f);    }    return 0;  }  ...}

對比兩種方式的差異,其實(shí)就在+0.5f上,去尾法和四舍五入法的區(qū)別,即精度問題。

總結(jié)

以上所述是小編給大家介紹的android中px和dp,px和sp之間的轉(zhuǎn)換方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對VEVB武林網(wǎng)網(wǎng)站的支持!


注:相關(guān)教程知識閱讀請移步到Android開發(fā)頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
成人日韩在线视频| 国产成人福利网站| 欧美激情一区二区三区在线视频| 欧美激情亚洲另类| 日韩一区二区电影网| 麻豆网站视频在线观看| 亚洲图片在线| 91久久久久久久久久久久| 欧美日韩一区二区三区视视频| 国产高潮免费视频| 成人免费视频网站| 91精品国产综合久久男男| 精品久久久久亚洲| 黄色av免费在线看| 69堂精品视频在线播放| 中文字幕亚洲在线观看| 清纯唯美日韩制服另类| 东方伊人免费在线观看| 一二三四区视频| 国产伦精品一区二区三区千人斩| 国产婷婷色一区二区三区四区| 欧美成人一区在线| 深夜福利av你懂的| 成人欧美magnet| 成年网站免费入口在线观看| 天天躁日日躁狠狠躁伊人| 国产精品一二三区| 懂色av一区二区三区免费看| 日韩一级片免费在线观看| 国产精品无码一本二本三本色| 91丨porny丨户外露出| 成人写真视频福利网| 欧美大片在线免费观看| 欧美大片大片在线播放| 可以免费观看av毛片| 欧美videos另类精品| 中文天堂在线资源| 久久久久久久久久影视| 欧美精品精品精品精品免费| 中国精品一区二区| 久久成人精品| 在线视频国内一区二区| 日本国产在线视频| 精品制服美女久久| av黄色免费在线| 亚洲人成色77777| 国产精品毛片一区视频播| 免费在线观看污| 偷拍自拍在线看| 国产91视频一区| 在线欧美激情| 日本一区二区三区四区视频| 男男受被啪到高潮自述| 欧美精品1区2区3区| 狠狠色狠狠色综合人人| 国产中年熟女高潮大集合| 亚洲第一视频在线播放| 丰满少妇在线观看网站| 黄色小视频免费| 在线看片国产福利你懂的| 国产精品福利av| 成人精品动漫一区二区三区| 久久看人人爽人人| 国产一级片久久| 成年女人在线看片| 九九99久久精品在免费线bt| 91丨国产丨九色丨pron| 99视频精品| 一区二区三区美女| 男人插女人下面免费视频| 国产美女撒尿一区二区| 日韩一级免费| 欧美高清一区| 九色蝌蚪在线观看| 亚洲成人免费在线| 久久久精品久久久久久96| 精品麻豆视频| 国产1区2区3区4区| aaa免费看大片| 亚洲一区精品视频在线观看| 亚洲天堂一区二区三区四区| 你懂的网址国产 欧美| 日本h在线观看| 99久久精品免费看国产| 亚洲狠狠婷婷综合久久蜜桃| 日韩激情视频一区二区| www.成人精品| 亚洲成人影院在线观看| 亚洲美女视频一区| 在线免费黄网| 瑟瑟在线观看| 青青操在线视频观看| 不卡av电影在线播放| 热久久中文字幕| 欧美另类综合| 黄页在线播放| 欧美一级本道电影免费专区| 一级特黄妇女高潮| 国产精品久久久一区二区三区| a欧美人片人妖| 好看的视频你懂的| 日本三级韩国三级久久| 日韩性生活视频| 久久91导航| 天天色天天草天天射| 中文字幕乱码人妻无码久久| 蜜桃精品视频在线| 国产精品1000部啪视频| 99久久精品国产一区色| 日韩中文字幕视频网| 超碰精品在线观看| 美女流白浆视频| 美女精品一区二区| 国产亚洲精品久久久久久牛牛| 日本视频中文字幕| 三级欧美在线一区| 成人网av.com/| 日韩大胆人体| 国产精品一区二区6| 99久久er热在这里只有精品15| 久久久久久久久97黄色工厂| 成人免费在线一区二区三区| 麻豆成人入口| 欧美精品久久久久久久免费| 欧美日韩亚洲一区二区三区| 欧美一区二区三区成人| 国产免费无遮挡吸奶头视频| 9.1成人看片| 超碰成人在线免费观看| 欧美精品一卡二卡| 性一交一乱一区二区洋洋av| 本田岬高潮一区二区三区| 久久夜色精品国产欧美乱| 97精品视频在线看| xxx性欧美| 妞干网在线视频| 欧美第一页在线| 国卡一卡二卡三免费网站| 国产精品乱码一区二区三区软件| 99久久人妻精品免费二区| 国产午夜精品一区二区三区欧美| 日本福利视频一区| 亚洲精品久久久| 国产剧情在线一区| 亚洲AV无码成人精品区东京热| 日韩高清一级| 国产一区在线播放| 欧洲美女精品免费观看视频| 1204国产成人精品视频| 欧美日韩精品一区二区天天拍小说| 中文字幕人妻一区二区| www插插插无码免费视频网站| 久久久久88色偷偷免费| 亚洲欧美日韩一区二区在线| 在线男人天堂| 欧美激情伊人电影| 妞干网在线观看| 成人免费视频在线观看| 国产成人免费电影| 欧美中文字幕一二三四区| 久久久www成人免费毛片麻豆| 国产一区二区三区四区视频| 国产成人精品综合| 欧美亚洲国产bt| 久久久久久国产精品日本| 视频一区二区视频| av在线中文| 成人三级视频在线播放| 成人福利免费观看| 视频一区中文字幕精品| 国产精品香蕉av| 色www亚洲国产阿娇yao| 国产精品成人aaaaa网站| 精品视频在线视频| 电影一区中文字幕| 福利视频导航一区| 国产精品免费在线| 精品国内二区三区| 成人激情视频小说免费下载| 亚洲成年人视频| 污视频在线看网站| 欧洲毛片在线视频免费观看| 欧美动漫一区二区| 亚洲欧美日韩在线高清直播| 欧美艳星介绍134位艳星| 国产激情av在线| 欧美男男同志| 日韩黄色中文字幕| 欧美日在线观看| 精品久久久久久久人人人人传媒| 一区二区在线电影| 欧美又大粗又爽又黄大片视频| 精品无码av无码免费专区| 97人澡人人添人人爽欧美| 91高清在线观看视频| 无码人妻精品一区二区三区夜夜嗨| 欧美在线一二三四区| 成人a在线观看| 黄色片网站免费| 巨茎人妖videos另类| 国产精品福利在线| 欧美大片日本大片免费观看| 精品人妻无码一区二区三区蜜桃一| 亚洲国产三级| 美女扒开尿口让男人操| 亚洲成av人片在www色猫咪| 免费观看国产精品| 免费在线黄色影片| 欧美国产丝袜视频| 亚洲韩国青草视频| 亚洲国产精品免费在线观看| 男人天堂中文字幕| 精品无码m3u8在线观看| 日韩午夜在线视频| 久久免费播放视频| 亚洲一区二区在线免费观看视频| www 成人av com| 亚洲欧美偷拍自拍| 日韩成人网免费视频| 欧美日韩国产中文| 黑人一级大毛片| 亚洲国产日韩欧美一区二区三区| 国产日韩在线一区二区三区| 18+视频在线观看| 久久激情一区| 欧美又粗又长又爽做受| 战狼4完整免费观看在线播放版| 我要看一级黄色大片| 夜夜春亚洲嫩草影视日日摸夜夜添夜| 欧美伊久线香蕉线新在线| av污在线观看| 久久精品在线免费视频| 亚洲欧美激情小说另类| 任你躁av一区二区三区| 日本在线成人| 欧美又大粗又爽又黄大片视频| 亚洲第一区在线| 久久精品免费播放| 欧美一区二区三区影视| 99在线视频影院| 男女啪啪网站视频| 欧美二区视频| 国产在线精选视频| 国产日韩精品suv| 日本一区二区三区电影免费观看| 男人的天堂免费| 伊人久久久久久久久久| 国产不卡视频一区| 大片免费播放在线视频| 人在线成免费视频| av资源网在线播放| 国产91精品欧美| 日本在线观看一区二区三区| 国产精品69久久久久孕妇欧美| 一本到三区不卡视频| 国产三级一区二区三区| 精品影院一区二区久久久| 亚洲欧美国产精品专区久久| 成人av午夜影院| 丁香婷婷激情| 丁香另类激情小说| 国产毛片毛片毛片毛片毛片毛片| 激情中文字幕| 日韩欧美国产综合一区| baoyu777.永久免费视频| 久久久久久久久久久99999| 精品夜色国产国偷在线| 国产免费一区二区视频| 欧美日韩成人综合在线一区二区| 亚洲激情一区二区| 亚洲成av人影院在线观看网| 中文字幕av高清片| 欧美日韩在线视频一区| 五月激情综合色| 亚洲aaa激情| 91成人小视频| 亚洲熟妇av乱码在线观看| 户外露出精品视频国产| 老司机精品视频一区二区| 色噜噜狠狠色综合欧洲selulu| 日本欧洲国产一区二区| 高清美女视频一区| 亚洲一区二区三区久久久| 久久精品国产美女| 青青草国产成人久久91网| 99riav视频一区二区| 精品黑人一区二区三区| 欧美性色黄大片| 亚洲毛片在线播放| 亚洲精品8mav| 日韩欧美一区二区三区免费观看| 国产三级av片| 日日骚一区二区三区| 韩国一级黄色录像| 只有精品亚洲| www.亚洲一区二区| 中文字幕在线播| 欧美高清视频在线观看mv| 日本精品一区二区三区四区的功能| 成人美女黄网站| 黄色三级电影网站| 日本伊人精品一区二区三区介绍| 日韩精品――色哟哟| 亚洲免费精品视频| 国产午夜免费福利| 中文字幕一区二区三区四区五区六区| 亚洲一区二区自拍偷拍| 亚洲男女一区二区三区| 国产视频亚洲精品| 色中色777| 久久久久久久久久毛片| 国产区在线观看| 久久久久久久久久久久电影| 亚洲综合在线小说| av男人的天堂在线观看| 在线观看中文字幕av| 99视频在线精品国自产拍免费观看| 91美女福利视频高清| 一区二区三区四区视频| 欧美性猛片aaaaaaa做受| 国产精品看片你懂得| 蜜臀av午夜精品久久| 日韩av在线一区二区三区| 国产精品一区在线观看你懂的| 嗯啊主人调教在线播放视频| 国产一区二区四区| 亚洲综合在线小说| 欧美性生活一级片|