Java 如何使多个listview响应不同的侦听器?
我在类扩展活动中使用4list视图。我必须执行不同的列表项单击功能。我可以使用下面的方法代码吗?那么,如何为多个Java 如何使多个listview响应不同的侦听器?,java,android,Java,Android,我在类扩展活动中使用4list视图。我必须执行不同的列表项单击功能。我可以使用下面的方法代码吗?那么,如何为多个列表视图设置单个监听器 public void onItemClick(AdapterView<?> adapter, View view, int index, long id) { switch(view.getId()) { case <listview1 Id> : //call method
列表视图设置单个监听器
public void onItemClick(AdapterView<?> adapter, View view, int index, long id)
{
switch(view.getId())
{
case <listview1 Id> : //call method 1; break;
case <listview2 Id> : //call method 2; break;
case <listview3 Id> : //call method 3; break;
}
}
public void onItemClick(AdapterView适配器、视图视图、int索引、长id)
{
开关(view.getId())
{
case://调用方法1;break;
case://调用方法2;break;
case://调用方法3;break;
}
}
为不同的列表视图设置不同的适配器。
我以两个列表视图为例。因此,为这两个设置两个适配器。setOnItemClick(上下文)将如下所示
public void onItemClick(AdapterView<?> adv, View v, int arg2, long arg3) {
// TODO Auto-generated method stub
switch(adv.getId()) {
case R.id.ListView1:
Toast.makeText(this, "list1", Toast.LENGTH_LONG).show();
break;
case R.id.ListView2:
Toast.makeText(this, "list2", Toast.LENGTH_LONG).show();
break;
}
}
public-void-onItemClick(AdapterView-adv,视图v,内部arg2,长arg3){
//TODO自动生成的方法存根
开关(adv.getId()){
案例R.id.ListView1:
Toast.makeText(这是“list1”,Toast.LENGTH_LONG).show();
打破
案例R.id.ListView2:
Toast.makeText(这是“list2”,Toast.LENGTH_LONG).show();
打破
}
}
ya。但我得到了意想不到的结果。如果我单击第二个列表的第一项,我将获得第一个列表的第一项。是否为所有ListView设置侦听器?ya.setOnItemClickListener(此);嗯,请多发一些代码好吗?在每个视图上调用setId()是否正确?我认为默认值是0,它们不是自动生成的,但我可能错了。