Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android McClickListener一次只能为一个列表项工作吗?_Android - Fatal编程技术网

Android McClickListener一次只能为一个列表项工作吗?

Android McClickListener一次只能为一个列表项工作吗?,android,Android,我为我的列表视图设置了一个onItemClickListener()。对我来说,这个名字意味着事件应该在单击列表视图中的任何单个项目后触发。在我的应用程序中,我对我的项目有多个选择,onitemclicklistener()只响应单击的第一个项目。这就是它的工作原理吗?如果是这样,是否有其他方法可以为每个列表项设置一个onClickListener()?谢谢 一些代码: listView.setOnItemClickListener(new OnItemClickListener(){

我为我的
列表视图设置了一个
onItemClickListener()
。对我来说,这个名字意味着事件应该在单击列表视图中的任何单个项目后触发。在我的应用程序中,我对我的项目有多个选择,
onitemclicklistener()
只响应单击的第一个项目。这就是它的工作原理吗?如果是这样,是否有其他方法可以为每个列表项设置一个
onClickListener()
?谢谢

一些代码:

listView.setOnItemClickListener(new OnItemClickListener(){

            @Override
            public void onItemClick(AdapterView<?> adapter, View view, int position,
                    long id) {
                ListView listView = getListView();
                listView.setItemChecked(position, true);
                Log.v("onItemClick","set checked");
listView.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
公共控件单击(适配器视图适配器、视图视图、int位置、,
长id){
ListView ListView=getListView();
setItemChecked(位置,true);
Log.v(“onItemClick”,“set checked”);
日志中的消息是:

仅记录在列表中首先单击的任何项目上。单击其他项目不会调用侦听器,因为消息未被记录。

您尝试过吗

getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 

onItemClickListener在单击ListView中的项目时被调用。您必须检查您的实现当我开始时,我也一直忘记I实现。有一天,我要求使用onTouchListeners(非常类似)。好了。这确实允许为多个列表项调用侦听器,但是上下文操作栏现在没有打开。当我使用CHOICE_MODE_multiple_MODE时,情况正好相反:CAB打开,但只有一个列表项响应侦听器。在任何人询问之前,我需要侦听器访问每个项的视图,而我在onItemCheckedStateChanged()方法。谢谢你的回答(抱歉,我不能投票)嗯,你知道你得到了带有事件的视图…public void onItemClick(AdapterView适配器,视图视图,int position,long id)??是的,你可以为一个列表项这样做,因为其余的不调用onItemClick()方法