Mic*_*udy 25 android margin textview
我确实遇到了问题TextView
.我不希望它上面有任何边距/填充.
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/ptp_hour"
android:textColor="@color/black"
android:textSize="100dp"
android:height="100dp"
android:layout_marginTop="0dp"
android:paddingTop="0dp"
android:includeFontPadding="false"
android:maxLines="1"
android:text="10"/>
Run Code Online (Sandbox Code Playgroud)
我TextView
看起来像这样,尽管textSize
和height
设置为相同的值,字体上方有一个空格.这让我感到困扰,因为我想把另一个视图放在相对于字体的顶部.这个间距是否包含在字体本身中?
还有一个问题:如果我发现距离顶部20dp和底部7dp的余量在我的设备上完美运行,我可以依赖它在其他屏幕上的表现方式相似吗?(这些边距适用于按钮)
我有同样的问题,设置android:includeFontPadding=false
没有帮助.我能在合理的时间内找到的最佳解决方案是覆盖TextView的onDraw
方法并调整画布以获得字体度量的top和ascent值之间的差异:
FontMetricsInt fontMetricsInt;
@Override
protected void onDraw(Canvas canvas) {
if (adjustTopForAscent){
if (fontMetricsInt == null){
fontMetricsInt = new FontMetricsInt();
getPaint().getFontMetricsInt(fontMetricsInt);
}
canvas.translate(0, fontMetricsInt.top - fontMetricsInt.ascent);
}
super.onDraw(canvas);
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
19392 次 |
最近记录: |