我有一个Gridview,里面有很多我从url上得到的图片。我已经将它们全部添加到一个Arraylist中,并将Arraylist设置为Gridview。我用过
grid.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
//my code here
} 所以,现在当我点击GridView items时,我会得到一个围绕每个网格项目的边框。我可以改变边框的颜色吗?
发布于 2011-12-05 22:24:15
是的你可以。在网格项目的布局中,您可以将可绘制的背景设置为选择器。http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList您可以设置项目的每种状态(按下、聚焦、默认等)。以对应于您想要的任何颜色(或可绘制的)。使边框成为自定义可绘制的边框对您来说是最容易的。要么是形状,要么是9补丁。
发布于 2012-05-21 19:14:06
看看这个例子
res/drawable/border.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<stroke android:width="2dp" android:color="@color/green"/>
<solid android:color="@android:color/transparent"/>res/drawable/grid_item_selector.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/border" />
<item android:drawable="@android:color/transparent"/>
</selector>现在在网格视图中使用的是属性android:listSelector="@drawable/grid_item_selector"
在main.xml中
<GridView android:id="@+id/gridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"
android:horizontalSpacing="-1px"
android:verticalSpacing="-1px"
android:drawSelectorOnTop="true"
android:listSelector="@drawable/grid_item_selector"/>https://stackoverflow.com/questions/8386324
复制相似问题