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

Posted 安卓开发-顺

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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值,必须转换好以后再传入

以上是关于Android布局代码设置尺寸用px值还dp呢?的主要内容,如果未能解决你的问题,请参考以下文章

Android studio设置与测试机屏幕大小相同的布局预览

Android入门UI-单位与尺寸ListView

Android中的尺寸单位

Android百分比布局

android布局中高为0dp 权重为1是啥意思

Android 多屏幕适配 dp和px的关系 最好用dp