很多时候,我们在开发的时候,经常发现,textview中展示的字符串不同,可能会影响到同一布局下的其他控件的位置.
我们总是希望能够拿到textview的宽度,但是发现,textview.setText("xxx");之后,根据textview.getWidth();或者textview.getMeasuredWidth();方法总是无法获取到真正的textview所展示的宽度.至于为什么,我就不多说了,只要做过安卓开发的,基本都明白.
那么有一个办法可以提前获取到textview所占据的宽度:
textview.getPaint().measureText("你所要展示的字符串");返回一个float值,这个值就是所占据的宽度,单位是px,如果是textview设置了padding,再把这个padding加上就可以了.
除此之外,还有一个好处,就是不管系统字号多大,都可以正确的计算出它所占据的位置来.
祝大家工作愉快.