How to handle ListView click in Android How to handle ListView click in Android android android

How to handle ListView click in Android


On your list view, use setOnItemClickListener


Suppose ListView object is lv, do the following-

lv.setClickable(true);lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {  @Override  public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {    Object o = lv.getItemAtPosition(position);    /* write you handling code like...    String st = "sdcard/";    File f = new File(st+o.toString());    // do whatever u want to do with 'f' File object    */    }});


You need to set the inflated view "Clickable" and "able to listen to click events" in your adapter class getView() method.

convertView = mInflater.inflate(R.layout.list_item_text, null);convertView.setClickable(true);convertView.setOnClickListener(myClickListener);

and declare the click listener in your ListActivity as follows,

public OnClickListener myClickListener = new OnClickListener() {public void onClick(View v) {                 //code to be written to handle the click event    }};

This holds true only when you are customizing the Adapter by extending BaseAdapter.

Refer the ANDROID_SDK/samples/ApiDemos/src/com/example/android/apis/view/List14.java for more details