如何在XML中设置Android表格布局列的填充(padding)?

6

Wireframe of my layout

我使用TableLayout设计了布局。 android:layout_span对我有所帮助。

问题是我需要在列1和列2之间留一些间隔,可以使用Padding / Margin的任何一种方式。

我不想用程序来完成此任务。肯定有一种简单的方法来完成这项任务。

是否可能使用xml设置?

更新: 我尝试设置列子元素的padding,但是它不能使列均匀对齐。

4个回答

4
尝试在布局XML中左侧列的视图上添加android:layout_marginRight ="8dp",以为每行留出间隔。这对我有用。

更好的方法是将填充维度放入values/dimens.xml文件中,并从那里引用边距。

例如:

values/dimens.xml

<resources>
    <dimen name="column_1_right_margin">8dp</dimen>
</resources>

layout/table.xml

<TableLayout
    ... layout params>
    <TableRow>
        <TextView
            ... layout params
            android:layout_marginRight="@dimen/column_1_right_margin" />
        <TextView
            ... layout params />
    </TableRow>
    <TableRow>
        <TextView
            ... layout params
            android:layout_marginRight="@dimen/column_1_right_margin" />
        <TextView
            ... layout params />
    </TableRow>
</TableLayout>

为了更清晰地表达并避免代码重复,您可以为第一列创建一个样式,然后只需将该样式应用于第一列中的每个View点击这里了解更多信息

2
尝试在xml布局中使用TableLayout,然后对于TableLayout中的每个TableRow,可以使用android:layout_marginRight和android:layout_marginLeft指定左侧或右侧边距。当然,你的TableLayout将被放置在一个LinearLayout中。

我刚刚使用了表格布局。并且我成功地设计了布局。我只需要为列设置填充即可。 - Mahendran
你可以通过填充TableRows来实现这一点。在这里,你可以找到一个很好的例子:http://www.mkyong.com/android/android-tablelayout-example/ - SolidSnake87
我已经看过了。它只是将填充设置为整个表行,而不是列之间。你试过了吗? - Mahendran

0

你可以创建空列,然后用一些不可见的内容填充。

这个解决方案并不是最好的,我还在继续寻找更好的方法。


0
尝试在Android中使用android:background属性,同时与android:margin一起使用,并以dip为单位指定值。这将根据您的规格显示每个子视图的不同颜色,并且边距将帮助您在视图之间提供空间。希望这可以帮到您。

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