按钮顶部增加多行

时间:2010-12-30 00:40:23

标签: android layout-gravity

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

我正在扩展Button以取代标准。在我自己的按钮中我设置: - TextAppearence(文本16px,粗体..) - BackgroundDrawable(替换标准按钮的选择器,使用60px的图像) - Gravity: LEFT|CENTER_VERTICAL.

每当文本足以使按钮有2个文本行时,如果它具有属性Gravity.CENTER_VERTICAL,则会出现顶部填充!

这让我感到满溢并且谷歌搜索了好几个星期......(设置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);
 }

通过在扩展按钮上覆盖此方法,最后我让它工作,没有刺激性的顶部填充...仍然我不明白为什么会发生这种情况。

任何想法?

1 个答案:

答案 0 :(得分:0)

我发现布局的重力以及按钮的重力和重量(我没有使用weightSum只是layout_weight)会弄乱布局。

非常奇怪,但......它正在发生。