移除按钮之间的空格

8

我有一些按钮在线性布局中,但是它们之间有空白。我将padding设置为0,但没有变化。 已经有人在这里遇到了同样的问题,但是没有得到答案。 你能帮助我吗?

2个回答

19

尝试使用android:layout_margin属性进行调整。例如,要减小左/右侧的空间(假设您有一组水平按钮),可以像这样进行操作:

<Button
    android:layout_marginLeft="-3dip"
    android:layout_marginRight="-3dip"
    ... />

在某些布局上,这也适用于填充! - Magakahn
这是最佳答案确实令人惋惜,不是因为它不能工作,而是“猜测和检查”的机制从来都不是正确/最有效的方法。这个解决方案保证可移植吗?(即在一个显示屏上工作的“-Xdip”是否适用于所有显示屏?) - Mike
1
@Mike 是的,你说得对,这实际上是一个快速解决方法。最好的方法是创建一个自定义按钮可绘制对象,在其中可以控制边框宽度。另一方面,只要我们在布局中使用dip单位,它应该在不同的屏幕上工作得很好。如果这用于本机Android按钮,则肯定存在Android将来更改按钮边框的风险,因此必须调整“-Xdip”值。另一方面,这就是AndroidManifest.xml中的targetSdk所用的 - 保证在未来的操作系统上获得预期的行为。 - Vit Khudenko

10

我将引用我之前在此问题上提供的答案:

如果你想让按钮像素完全靠边对齐,你需要使用自己的9-patch作为按钮背景,因为Android默认的9-patch背景周围有一些额外的像素。例如,可以查看SDK文件夹下面的文件:

platforms/android-8/data/res/drawable-hdpi/btn_default_transparent_normal.9.png

例如,这是使用默认样式得到的效果:

alt text

而这是我先前制作的自定义9-patch样式得到的效果:

alt text


谢谢。我给我的按钮添加了背景颜色,然后空格消失了。这对我真的很有帮助。 - csfcse

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接