如何在GridView中为单元格设置对齐?

时间:2012-10-06 14:32:32

标签: android

我有以下布局:

<GridView
    android:id="@+id/gridViewCalendar"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:numColumns="7" >
</GridView>

以下代码生成简单的ArrayAdapter:

private View initializeCalendarScreen(LayoutInflater inflater) {
    View layout=inflater.inflate(R.layout.calendar_layout, null);
    GridView events=(GridView)layout.findViewById(R.id.gridViewCalendar);

    ArrayAdapter<String> adapter=new ArrayAdapter<String>(context, android.R.layout.simple_list_item_1, items);
    events.setAdapter(adapter);
    return layout;
}

它可以工作,但单元格中的文本不在中心 - 它左边是默认对齐。我该如何解决?

1 个答案:

答案 0 :(得分:4)

您应该为项目创建自己的布局,而不是使用android.R.layout.simple_list_item_1 布局是这样的,如在Android SKD上看到的那样:

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceListItemSmall"
android:gravity="center_vertical"
android:paddingLeft="?android:attr/listPreferredItemPaddingLeft"
android:paddingRight="?android:attr/listPreferredItemPaddingRight"
android:minHeight="?android:attr/listPreferredItemHeightSmall"
/>

你可以简单地复制它,但把android:gravity =“center”或修改它以满足你的需要