我的 Android 应用程序中出现了一些非常非常奇怪的行为。
我正在扩展 Button 以替换标准。在我自己的按钮中,我设置: - TextAppearence(文本 16 像素,粗体..) - BackgroundDrawable(替换标准按钮的选择器,使用 60 像素的图像) -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);
}
通过在扩展按钮上覆盖此方法,我终于让它在没有恼人的顶部填充的情况下工作......我仍然不明白为什么会发生这种情况。
有什么想法吗?