ListView onItemClickListener从未触发过

时间:2012-06-26 13:12:01

标签: android listview focus

我创建了一个自定义视图,它覆盖了onTouchListener,以便根据用户执行的操作使不同的图像被淹没。 (例如,当用户点击视图时更改视图的背景)。

我想在ListView中使用这个自定义视图,所以我创建了一个显示所有视图的自定义适配器,但我的ListView的onItemClickListener从未被触发。

我该怎么办?

以下是我的自定义视图中的代码:

    @Override
public boolean onTouchEvent(MotionEvent event) {
    switch (event.getAction()) {
    case MotionEvent.ACTION_DOWN:
        setMode(MODE_SELECTED);
        invalidate();
        break;
    case MotionEvent.ACTION_UP:
        setMode(MODE_NONE);
        invalidate();
        break;
    case MotionEvent.ACTION_CANCEL:
        setMode(MODE_NONE);
        invalidate();
        break;
    case MotionEvent.ACTION_OUTSIDE:
        setMode(MODE_NONE);
        invalidate();
        break;
    default:
        break;
    }
    return true;
}

1 个答案:

答案 0 :(得分:0)

好的,我找到了一个解决方案:我使用StateListDrawable,它避免我覆盖自定义视图的onTouch!