Android 按钮顶部增加多行

Android 按钮顶部增加多行,android,layout-gravity,Android,Layout Gravity,我的Android应用程序中出现了一些非常奇怪的行为 我正在扩展按钮以替换标准。在我自己的按钮中,我设置: -文本外观(文本16px,粗体..) -背景可绘制(至替换标准按钮的选择器,该按钮使用60px图像) -重力:左|中心|垂直。 每当文本足以使按钮有两条文本行时,如果按钮具有“重力.垂直中心”属性,则会出现顶部填充 这让我忙了好几个星期,一直在谷歌上搜索。。。(设置paddingTop、singleLine和其他简单的解决方案当然不起作用!) 终于找到了解决办法 @Override p

我的Android应用程序中出现了一些非常奇怪的行为

我正在扩展按钮以替换标准。在我自己的按钮中,我设置: -文本外观(文本16px,粗体..) -背景可绘制(至替换标准按钮的选择器,该按钮使用60px图像) -
重力:左|中心|垂直。

每当文本足以使按钮有两条文本行时,如果按钮具有“重力.垂直中心”属性,则会出现顶部填充

这让我忙了好几个星期,一直在谷歌上搜索。。。(设置paddingTop、singleLine和其他简单的解决方案当然不起作用!)

终于找到了解决办法

 @Override
 protected boolean setFrame(int l, int t, int r, int b) {
  int fixedTopSize = 5;
  return super.setFrame(l,fixedTopSize, r, b-t);
 }
通过覆盖扩展按钮上的这个方法,我终于让它在没有恼人的顶部填充的情况下工作了。。。我还是不明白为什么会这样


有什么想法吗?

我发现是布局的重力、按钮的重力和重量(我没有使用重量总和,只是布局重量)搅乱了布局

很奇怪但是。。。它正在发生