Android布局代码设置尺寸用px值还dp呢?

场景一、

new LinearLayout.LayoutParams(width, height);

这里的h就是LayoutParams中的width 和 height 要的就是px值

注意:通过下面这种方式拿到的值也是px值 如果dimen文件里写的是dp 到这里取出来后系统会换算成px

float dimen = getResources().getDimensionPixelOffset(R.dimen.star_film_banner_height)

场景二、

TextView tv = findViewById(R.id.text);

//这里的size 已经转换为px

float size = getResources().getDimensionPixelOffset(R.dimen.star_film_banner_height)

//所以这里要注明单位,否则默认是sp单位的 展示的时候会自动在根据denisty再转换一次

tv.setTextSize(TypedValue.COMPLEX_UNIT_PX,size)

如果直接用

tv.setTextSize(xxx)

那么这里的xxx 必须是sp或者dp

场景三、使用绘制时

textPaint.textSize = xxx

这里的xxx接受的px值,必须转换好以后再传入

猜你喜欢

转载自blog.csdn.net/u013347784/article/details/114920050
今日推荐