安卓笔记-- 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)+"行");
				
			}
        });


而长按监听为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,则长按监听的同时触发短监听。

原文地址:https://www.cnblogs.com/muyuge/p/6333590.html