android中的动态gridview分隔符

时间:2013-04-29 05:58:38

标签: android gridview separator

在我的应用程序中,我必须在用户交互时动态更改gridview分隔符(例如,水平分隔符为红色,1px为;垂直分隔符为蓝色,2px为...)我该怎么做?

我尝试了这种方法Android GridView with Separator,但这对我不好,因为我需要不同颜色的线性和垂直分隔符。

我也看到了这个例子Android GridView draw dividers,但我不知道如何以编程方式(没有xml文件)。

有任何帮助吗?

1 个答案:

答案 0 :(得分:1)

试试这个:

GridView grid = (GridView) findViewById(R.id.grid);
ArrayAdapter<String> a = new ArrayAdapter<String>(this, R.layout.item);
a.add("0"); a.add("1"); a.add("2");
a.add("3"); a.add("4"); a.add("5");
a.add("6"); a.add("7"); a.add("8");
a.add("9");
grid.setAdapter(a);

其中item.xml为:

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/iten"
    android:textSize="30dip"
    android:textStyle="bold"
    android:paddingLeft="10dip"
/>

和GridView定义为:

<GridView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/grid"
    android:numColumns="3"
    android:background="@drawable/grid"
    android:listSelector="@null"
/>

最重要的是两个drawable:item.9.png和grid.9.png

item.9.png是here

grid.9.png是here

结果网格视图如下所示

enter image description here