您的位置:首页 > 其它

TextView去掉自身自带的内边距

2016-08-16 11:55 183 查看
当输入sp比较大的文字或者数字的时候,文本或者数字周边会出现内边距的问题.

public class MyTextView extends TextView {

private boolean adjustTopForAscent = true;

public MyTextView(Context context) {
super(context);
}

public MyTextView(Context context, AttributeSet attrs) {
super(context, attrs);
}

public MyTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}

Paint.FontMetricsInt fontMetricsInt;

@Override
protected void onDraw(Canvas canvas) {
if (adjustTopForAscent) {//设置是否remove间距,true为remove
if (fontMetricsInt == null) {
fontMetricsInt = new Paint.FontMetricsInt();
getPaint().getFontMetricsInt(fontMetricsInt);
}
canvas.translate(0, fontMetricsInt.top - fontMetricsInt.ascent);
}
super.onDraw(canvas);
}


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  TextView 内边距