尝试在GridView Android中设置单元格(行/列)的背景颜色

时间:2014-03-31 16:38:10

标签: android gridview

如何为android中的gridview中的row / col设置自定义颜色?

我的gridView包含一个类型为Items的gridArray,它传递了我想要显示的所有数据,它是一个时间表。我根据我想要的位置计算项目的位置,然后显示项目。我无法更改单元格的背景颜色。我该怎么做呢。

for (int d1 = 0; d1 < days.size(); d1++) {
            if (myModules.get(1).equals(days.get(d1))) {
                for (int e1 = 0; e1 < times.size(); e1++) {
                    if (startEndM1[0].equals(times.get(e1))) {
                        gridArray.set(((e1 * 5) + d1),new Item(myModules.get(0)));
                        if (!startEndM1[1].equals(times.get(e1 + 1))) {
                            gridArray.set((((e1 * 5) + d1) + 5), new Item(myModules.get(0)));                           
                        }
                        int position = ((e1 * 5) + d1);
                        ((View) gridView.getItemAtPosition(position)).setBackgroundColor(Color.BLUE);
                    }
                }
            }
        }

上面的代码只是将项目设置到其指定的位置,如果我必须更改我设置项目的特定backgorund单元格的颜色,它会崩溃。 网格视图应该识别项目所在位置。 一些帮助会非常感激,谢谢。

1 个答案:

答案 0 :(得分:3)

好吧首先,我做了一个填字游戏,还不得不改变单元格的背景颜色......我这样做了

View tv = (View) gridView.getChildAt(i);
tv.setBackgroundColor(Color.RED);

也帮助了我很多的链接:

Change Color of cell of grid

http://eureka.ykyuen.info/2010/03/15/android-%E2%80%93-applying-alternate-row-color-in-listview-with-simpleadapter/