要实现的效果如标题.

在dimen.xml文件中设置了<dimen name="text_size">18sp</dimen>

开始的时候,通过sizeTv.setTextSize(getResource().getDimension(R.dimen.text_size))进行设置。

此时使用as的同学会发现,as提示的getDimension返回的值即为18sp。看着挺正常的。

但是跑出来的实际效果,会比在布局文件中直接设置18sp的字体来的大!!

暂时没去弄明白getDimension的作用及为何会提示是18sp而不是18dp亦或这里的单位是不是压根就没用。

为了实现效果,现在使用如下方法设置字体大小

sizeTv.setTextSize(TypedValue.COMPLEX_UNIT_SP, 18);

其中第一个参数TypedValue.COMPLEX_UNIT_SP指明单位为sp。

自此可实现目标效果

 

相关文章:

  • 2022-12-23
  • 2021-12-21
  • 2022-01-15
  • 2021-08-11
  • 2022-12-23
  • 2022-12-23
  • 2022-01-19
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-10
  • 2021-11-20
  • 2021-09-06
相关资源
相似解决方案