密度的逻辑

        在构建布局文件时,自然会涉及像素问题.在Android中有dp,px,dip等几个单位,其中常用的是dip.

         dip的设置与分辨率无关,在默认情况下,LDPI的密度是120,系数为0.75;MDPI的密度为160系数为1.0;HDPI的,密度为240,系数为1.5.XHDPI的密度为320,系数为2.0所谓密度就是单位平方英寸中含像素的数量.

px(像素) 与dip的关系如下:

px = (int) (dip*density+0.5f)

在具体的实现中,屏幕的密度被称为scale,px和dip的转换过程如下:

public void scale(float scale){

x = (int)(x*scale+0.5f);

y = (int)(y*scale+0.5f);

if(width>0){

width = (int)(width *scale+0.5f);

}

if(height>0){

height= (int)(height*scale+0.5f);

}


}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值