当我有一个TextView与一个\n在文本中,,在右边我有两个单线TextViews,一个在另一个之间没有间距。我已经为所有三个textview设置了以下内容。

android:lineSpacingMultiplier="1" 
android:lineSpacingExtra="0pt" 
android:paddingTop="0pt" 
android:paddingBottom="0pt"

第一行的左侧TextView线完美地与右上角TextView。

左TextView的第二行略高于右下TextView的第二行。

似乎有某种隐藏的填充顶部和底部的TextViews。我怎么才能去掉它呢?


当前回答

你可以尝试使用这个属性(ConstraintLayout):layout_constraintBaseline_toBaselineOf

是这样的:

app: layout_constraintBaseline_toBaselineOf = @ + id / textView”

其他回答

您可能想要尝试将左侧文本视图的底部与右侧第二个文本视图的底部对齐。

据我所知,这是大多数小部件固有的,不同的手机制造商“填充”的数量不同。这个填充实际上是图像边界和9补丁图像文件中的图像之间的空白。

例如,在我的Droid X上,旋转窗口小部件比按钮有更多的空白,这让你在旋转窗口内嵌一个按钮时看起来很尴尬,但在我妻子的手机上,同样的应用程序没有同样的问题,看起来很棒!

我唯一的建议是创建自己的9个补丁文件,并在应用程序中使用它们。

啊,Android的痛苦。

编辑:澄清填充和空白。

这招对我很管用:

android:minHeight="0dp"

更新XML

android:fontFamily="monospace"
android:includeFontPadding="false"

简单的方法奏效:

setSingleLine();
setIncludeFontPadding(false);

如果它没有工作,然后尝试添加这个代码:

setLineSpacing(0f,0f);
// and set padding and margin to 0

如果你需要多行,也许你需要通过临时单行TextView精确计算填充顶部和底部的高度(在删除填充之前和之后),然后应用降低高度结果与负填充或一些鬼布局翻译Y. Lol