完全禁用Android GridView高亮显示(禁用选择)

时间:2010-07-01 16:50:54

标签: android gridview selector

我正在尝试禁用Android 2.2中GridView中对象的突出显示。

我发现this other answer说我应该将选择器设置为透明的ColorDrawable(android:listSelector="@android:color/transparent"),但是当我选择它们时,我的GridView中的视图仍然是灰色的。

我只是使用GridView在网格中显示静态对象。这些对象都不会被选中。使用基本视图并手动绘制图像会更好吗?

4 个答案:

答案 0 :(得分:39)

为了保持可点击的项目,您应该使用下面的attr。在你的GridView xml中:

  

机器人:listSelector = “#00000000”

另见: https://stackoverflow.com/a/2866074/928591

答案 1 :(得分:22)

好的,看起来我找到了答案。

在GridView适配器的定义中,您必须覆盖以下方法:

@Override
public boolean areAllItemsEnabled()
{
    return false;
}

@Override
public boolean isEnabled(int position)
{
    return false;
}

这会导致网格中的所有项目都不可选,但它会完全消除突出显示。

答案 2 :(得分:1)

只需Set v.setOnClickListener(null);

答案 3 :(得分:0)

如果您只想禁用选择的视觉方面,可以执行以下操作:

gridview.getSelector().setAlpha(0);