当我们使用TextView显示多行的文字或者单行时,为了美观,一般会加上行间距,这时就会用到lineSpacingExtra这个属性。
Android 5.0以下,在这个系统里面会添加一个行间距,导致多余空白。
Adnroid 5.0以上,google修复这个问题,但是由于厂商定制不一样,导致一些5.1版本的手机也会出现同样的问题,oppo等
解决思路:
1.需要理解一下字体属性及测量,先看一下https://blog.csdn.net/g0ose/article/details/80547461这一篇博客
2.那么从上面博客里面我们知道 , baseline,Descent这俩个属性
我们是否可以这样想一下,baseline + Descent + linespace? + paddingbottom = 组件最下面高度
3.自定义TextView
按上面思路,我们先继承一个AppCompatTextView,
public class LastLineSpaceTextView extends AppCompatTextView {
public LastLineSpaceTextView(Context context) {
this(context, null);
}
public LastLineSpaceTextView(Context context, @Nullable AttributeSet attrs) {
this(