这个问题,碰到好几次了,做一下记录。
Android做自定义控件的时候,有以下方案。
一,继承View ,这种方案中,我们用到Paint,设置字体大小,及
paint.setTextSize(size);
设置自定义属性,在xml文件中设置大小,这种类型的自定义控件,没有发现什么问题。
但是下一种方案的自定义控件,就出事了。如下:
二,继承Layout,自定义组合控件。
我们设置组件中的TextView的字体大小时,使用,tv.setTextSize(size);
代码没有毛病 啊,但是运行发现,在xml文件中设置,字体大小时,比原生的大。
为毛啊,自己看源码去吧。
现在给出方案:
tv.getPaint().setTextSize(textSize);
问题完美解决。