我的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);
}
通过在扩展按钮上覆盖此方法,最后我让它工作,没有刺激性的顶部填充...仍然我不明白为什么会发生这种情况。
任何想法?
答案 0 :(得分:0)
我发现布局的重力以及按钮的重力和重量(我没有使用weightSum只是layout_weight)会弄乱布局。
非常奇怪,但......它正在发生。