安卓笔记-- ListView点击和长按监听
其中点击监听为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)+"行"); } });
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,则长按监听的同时触发短监听。