Utilizar OnItemClickListener en ListView dentro de ViewPager

Estoy intentando utilizar el método OnItemClickListener en un ListView pero no se está llamando porque ViewPager intercepta acontecimientos del tacto.

He intentado

 mPager.requestDisallowInterceptTouchEvent(false); 

En mi FragmentActivity , y

 lista.setDescendantFocusability(ListView.FOCUS_BLOCK_DESCENDANTS); 

En mi método onCreate en ListFragment pero no pasa nada. ("Lista" es mi ListView ).

Aquí está el código del método OnItemClickListener :

 lista = (ListView) view.findViewById(id.list); lista.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { //It's not being called } }); 

Hace unos días usé sólo Activities lugar de Fragments (ahora las necesito debido a ViewPager ) y el código funcionó bien, así que creo que xml no es necesario.

EDITAR Añadir más código:

FragmentActivity

 public class TabsFacturasActivity extends SherlockFragmentActivity { private static class MyAdapter extends FragmentPagerAdapter { private String[] titles = { "VER FACTURAS", "VER CONSUMO", "INTRODUCIR LECTURA" }; private final FragmentManager mFragmentManager; private Fragment mFragmentAtPos0; public MyAdapter(FragmentManager fragmentManager) { super(fragmentManager); mFragmentManager = fragmentManager; } @Override public CharSequence getPageTitle(int position) { return titles[position]; } @Override public Fragment getItem(int position) { switch (position) { case 0: // Fragment # 0 return new FacturasFragment(); ... } return null; } @Override public int getCount() { return titles.length; } @Override public int getItemPosition(Object object) { if (object instanceof FacturasFragment && mFragmentAtPos0 instanceof DetallesFacturaFragment) return POSITION_NONE; return POSITION_UNCHANGED; } } 

ListFragment

 public class FacturasFragment extends ListFragment { private ListView lista; public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.activity_facturas, container, false); ... lista = (ListView) view.findViewById(id.list); lista.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { //It's not being called } }); return view; } } 

Creo que el problema puede ser causado por los elementos listView. Si los elementos listView contienen vistas que se pueden hacer clic (botones, casillas de verificación, etc.), no se llamará a OnItemClickListener .

  • Listview recarga las imágenes ya cargadas mediante el cargador de imágenes Universal
  • Actualizar ListView después de actualizar en otra actividad
  • Cómo hacer que el encabezado o pie de página de un ListView no se puede hacer clic
  • No puede hacer clic en la fila listview con imagebutton
  • ViewRootImpl: ViewPostImeInputStage processPointer 0 en OnItemClick de Listview en android
  • Pinterest como Grid en Android
  • El adaptador personalizado de Android no funciona correctamente para la lista de chat
  • ¿Por qué Google utiliza Canvas en la vista de la lista de conversaciones de aplicaciones de Gmail?
  • Haga clic en ImageView dentro de ListView ListItem y obtenga la posición?
  • ¿Por qué desaparecen los elementos cuando se desplaza el listView?
  • Cómo obtener el valor del objeto desde la posición del adaptador de listview
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.