OnItemClickListener no funcionó con la checkbox?

Tengo un diseño de elemento como este y configuro el fondo con el selector de elementos

    

itemselector.xml:

      

Tengo un ListView que contendrá algunos elementos. Luego usé setOnItemClickListener () pero no funciona. Descubrí que si eliminé la checkbox del artículo, todo estará bien.

¿Cuál fue el problema entre la checkbox y el oyente aquí? ¿Puedes darme alguna solución?

Actualización: este es el código de oyente

 mainListView.setAdapter(messageAdapter); mainListView.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) { Message p = (Message) arg0.getItemAtPosition(arg2); Toast.makeText(TarsiusActivity.this, p.getTitle(), Toast.LENGTH_LONG); Log.i("Item Clicked", p.getTitle()); } }); 

ps: quiero hacer que la bandeja de entrada como gmail en Android. Cada fila tiene una checkbox y el usuario puede hacer clic en el elemento si quiere ver el mensaje

OnItemClickListener para listView no funcionará si tiene clickables como botones, ImageButton, Checkbox, etc. en listView. Añadir

 mainListView.setItemsCanFocus(true); 

¿ Refiere ListView OnItemClickListener que no responde?

La mejor forma de hacerlo es configurar estas propiedades para su checkbox:

  android:focusable="false" android:focusableInTouchMode="false" 

Tuve un problema similar e hice esto.

Solo agrega

android:descendantFocusability="blocksDescendants"

Para su nivel superior LinearLayout del listitem.

Puede agregar este código dentro de su método OnItemClickListener :

 public void onItemClick(AdapterView parent, View view, int position, long id){ CheckBox box = (CheckBox)view.findViewById(R.id.course_search_checkbox); box.setChecked(true); } 

Utilice setOnCheckedChangeListener lugar de onItemClickListne r para la checkbox

 CheckBox check; check=new CheckBox(this); check.setOnCheckedChangeListener(new OnCheckedChangeListener() { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { // TODO Auto-generated method stub } });