【发布时间】:2013-10-09 23:39:31
【问题描述】:
我有一个 GridView ,它显示字母图片
发生的事情是,每次在最后一行中都有更少的字母。
最后一行左对齐,看起来不太好
所以我想让最后一排在中间,
任何建议
我的GridView 代码:
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/grid_view"
android:layout_width="fill_parent"
android:layout_marginRight="20dp"
android:layout_marginTop="20dp"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:columnWidth="70dp"
android:horizontalSpacing="10dp"
android:verticalSpacing="20dp"
android:gravity="center"
android:stretchMode="spacingWidthUniform" >
</GridView>
【问题讨论】:
-
用另一个适配器包裹您在
GridView上设置的当前适配器,该适配器将插入一些额外的虚拟元素(如果需要),以便您最后的项目居中。 -
@Luksprog :但没有列取决于屏幕大小,我如何计算要添加更多的元素
-
我认为您可以使用
ViewTreeObserver并在其中查看GridView使用了多少列(getNumColumns()),然后基于此触发适配器更改(如果需要,添加元素)价值。小心不要让自己陷入死循环。 -
@HussainAkhtarWahid'Ghouri':你有没有找到任何完美的解决方案。我还需要在我的项目中实现相同类型的布局。你能和我分享你的布局代码吗?谢谢
-
@YuDroid :我有这个静态要求,所以我选择了 Table View ,适合我
标签: android android-layout android-gridview