Android setOnClickListener禁用ListView中的状态颜色更改

时间:2013-04-26 17:09:44

标签: android colors state onclicklistener

我有一个简单的ListView,默认情况下,当我按下列表项时,它的背景会变为某种颜色。但是,当我分配每个列表项视图.setOnClickListener(...)时,它会停止这样做。 你能告诉我幕后的情况吗?我已经研究了这个方法,它不是一个简单的setter,它是一系列可怕的方法调用......

感谢。

1 个答案:

答案 0 :(得分:4)

您的问题是,您不应该为列表中的每个项目设置OnClickListener。您应该在OnItemClickListener上设置ListView,这会在按下项目时回拨。尝试这样的事情:

    listView.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

            // When clicked, show a toast
            Toast.makeText(getApplicationContext(), "Position " + position 
                            + " clicked", Toast.LENGTH_SHORT).show();
        }
    });