其中点击监听为setOnItemClickListener()
具体实现代码如下
listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){ @Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) //arg2为行数,从0开始。
{
// TODO 自动生成的方法存根
Toast.makeText(MainActivity.this,"短按第"+String.valueOf(arg2+1)+"行",Toast.LENGTH_SHORT).show();
tv.setText("你点了第"+String.valueOf(arg2+1)+"行"); }
});
而长按监听为setOnItemlongClickListener()
listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
// TODO 自动生成的方法存根
Toast.makeText(MainActivity.this,"长按第"+String.valueOf(arg2+1)+"行",Toast.LENGTH_SHORT).show();
tv.setText("你点了第"+String.valueOf(arg2+1)+"行"); return true;
}
});
}
在实际调试中。发现一个问题,就是长按和短按同时监听的时候,会同时触发函数。
后来发现长按监听自带返回值,如果返回true,则不触发短监听。如返回false,则长按监听的同时触发短监听。