当输入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去掉自身自带的内边距的全部内容,更多相关TextView去掉自身自带内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复