Java Android:以编程方式覆盖按钮最小高度

Java Android:以编程方式覆盖按钮最小高度,java,android,button,height,padding,Java,Android,Button,Height,Padding,在搜索如何减少按钮内部的填充时,我发现应该在xml文件中将按钮的最小高度设置为0dp。 是的,它对我很有用 问题是:我想以编程方式创建按钮,但setMinimumHeight(1)和setMinHeight(1)都不起作用。 怎么做 顺便问一下,这两种方法有什么区别 谢谢大家! 我认为您应该尝试使用setPadding(0,0,0,0);相反,看看这是否适合你 就minHeight vs minimumHeight而言,minHeight是可以在布局文件中使用的XML属性名称。setMinimu

在搜索如何减少按钮内部的填充时,我发现应该在xml文件中将按钮的最小高度设置为0dp。 是的,它对我很有用

问题是:我想以编程方式创建按钮,但setMinimumHeight(1)和setMinHeight(1)都不起作用。 怎么做

顺便问一下,这两种方法有什么区别


谢谢大家!

我认为您应该尝试使用setPadding(0,0,0,0);相反,看看这是否适合你

就minHeight vs minimumHeight而言,minHeight是可以在布局文件中使用的XML属性名称。setMinimumHeight是相应的视图API方法,用于执行相同的操作。

只需调用

btn.setMinHeight(0);

不适合我

当我调用这两种方法时,它都起作用了,如下所示:

btn.setMinHeight(0);
btn.setMinimumHeight(0);
经过反复检查,确实如此,尽管看起来很奇怪

按钮是以编程方式创建的,没有XML,但它是具有XML描述的自定义数字控件的一部分

编辑:

setMinHeight由TextView定义,而setMinimumHeight由View定义。根据文档,使用两个值中的较大值,因此必须同时设置这两个值。XML中的minHeight属性对应于setMinimumHeight方法。
谢谢to@David刘先生非常感谢您的澄清。

不为我工作。我使用了
.setPadding(0,0,0,0)
.setMinimumHeight(0)但没有用。顺便说一句,我的按钮在一个
android.support.v7.widget.GridLayout中,不知道这是否重要。你不是唯一一个。我还发现,如果不同时调用这两个按钮,我无法覆盖自定义AppCompatButton中的最小高度。对于遇到此问题的未来用户,setMinHeight由TextView定义,而setMinimumHeight由View定义。根据API文档,使用两个值中的较大值,因此必须同时设置这两个值。此外,XML中的minHeight属性对应于setMinimumHeight方法,而不是setMinHeight方法,因此请小心。
btn.setMinHeight(0);
btn.setMinimumHeight(0);