【问题标题】:How can I shrink a button to fit its text?如何缩小按钮以适应其文本?
【发布时间】:2020-12-21 02:51:07
【问题描述】:

有没有办法获取一个以编程方式创建的按钮(未在 XML 中定义)并缩小它以匹配其文本的大小?

基本上我希望这些按钮更小:

我尝试将 minWidth 和 minHeight 设置为 0,但无济于事:

val btn = Button(view.context)
btn.text = getTranslationLabel(t)
btn.minWidth = 0
btn.minHeight = 0
translationsHolder.addView(btn)

【问题讨论】:

  • 大小主要由LayoutParams 决定,您可以传入the second parameter to addView()LayoutParams 子类的类型将基于您要添加到的 ViewGroup 的类型。在这种情况下,您可能还会得到一些由按钮背景创建的最小填充;您可能需要切换到自定义背景。
  • 您是否尝试将按钮的填充设置为零?
  • @CommonsWare 在我的完整代码中我实际上将背景设置为空,为了截图,我把背景放回去了,但很高兴知道其他情况。我会试试你的其他建议,谢谢!
  • @MuddassirAhmed 是的,我尝试将填充设置为 0 无济于事。

标签: android user-interface kotlin button layout


【解决方案1】:

因此,经过一些实验和搜索,我们能够找到这个答案,并且它可以工作https://stackoverflow.com/a/41525925/5841416。您需要同时设置minHeightminimumHeight 属性。

button.minWidth = 0
button.minHeight = 0

button.minimumWidth = 0
button.minimumHeight = 0

【讨论】:

  • 这与setPadding(0, 0, 0, 0) 结合使用。谢谢!
猜你喜欢
  • 1970-01-01
  • 2019-01-11
  • 2017-05-07
  • 2020-04-25
  • 1970-01-01
  • 2016-11-24
  • 2022-01-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多