android – 如果没有背景,Button的填充功能无效

android – 如果没有背景,Button的填充功能无效,第1张

概述今天我遇到了一个奇怪的布局问题,我没有从谷歌找到任何有用的答案. 在我的布局上,我有一个按钮,左边是文本,右边是图标.我希望文本是20dp左边距到按钮的边框然后我将paddingLeft设置为按钮,但它不起作用.偶然的机会,我为按钮设置了背景颜色,填充就像魅力一样.任何人都可以帮我解释这件事. 布局如下 <Buttonandroid:layout_width="fill_parent" 今天我遇到了一个奇怪的布局问题,我没有从谷歌找到任何有用的答案.

在我的布局上,我有一个按钮,左边是文本,右边是图标.我希望文本是20dp左边距到按钮的边框然后我将paddingleft设置为按钮,但它不起作用.偶然的机会,我为按钮设置了背景颜色,填充就像魅力一样.任何人都可以帮我解释这件事.

布局如下

<buttonandroID:layout_wIDth="fill_parent"        androID:drawableRight="@drawable/right_arrow"        androID:paddingleft="20dp"        androID:paddingRight="20dp"        androID:layout_height="72dp"        androID:text="button"        androID:ID="@+ID/btn"        androID:gravity="center_vertical"        androID:FontFamily="roboto regular"        androID:textcolor="#ffffff00"         />

谢谢你们!

解决方法 设置minWIDth和minHight似乎可以使填充和边距在有或没有背景的情况下正常工作.
<button     androID:minHeight="0dp"    androID:minWIDth="0dp" ...

至于为什么背景对填充的工作原理做了什么……我认为它与VIEw.java中的这段代码有关

protected int getSuggestedMinimumWIDth() {    return (mBackground == null) ? mMinWIDth : max(mMinWIDth,mBackground.getMinimumWIDth());}protected int getSuggestedMinimumHeight() {    return (mBackground == null) ? mMinHeight : max(mMinHeight,mBackground.getMinimumHeight());}

https://stackoverflow.com/a/20323723/4401507

总结

以上是内存溢出为你收集整理的android – 如果没有背景,Button的填充功能无效全部内容,希望文章能够帮你解决android – 如果没有背景,Button的填充功能无效所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1137942.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存