Filtrado ListView onItemClick devuelve el artículo en la posición original

Tengo un listview con las filas de encargo que son pobladas de un BaseAdaptor encargo. Al hacer clic en cualquier fila, abro una nueva Activity . Todo funcionaba bien hasta que agregué la funcionalidad de filtro a esta lista. Cuando busco la lista y luego haga clic en un elemento, no se abre la actividad asociada con los resultados filtrados. Se abre una actividad relacionada con el elemento en esa posición en la lista de originales.

P.ej. – Lista original: AA, BA, CC, DA, ED, FF

Buscar: 'A' Resultados filtrados: AA, BA, DA

Pero cuando hago clic en el elemento DA , abre la Actividad de CC . Extremadamente irritante. He llamado notifyDataSetChanged() en el adaptador.

He estado atrapado con este problema por algún tiempo. Realmente no sé cómo solucionarlo. No publiqué el código porque es un montón de código y realmente no quiero poner todo aquí.

Si alguien me puede dar una idea de cómo seleccionar el elemento de la lista FILTERED .. Que b grande.

¡Gracias! ¡Dime si se necesita algo más para entender mi pregunta!

Gracias por responder a todos, pero encontré el problema.

Espero que esto ayude a otra persona. Con algo tan básico, a veces se hace difícil encontrar el error y recurrimos a maneras muy complicadas!

Para iniciar mi nueva actividad, estaba tomando la posición del elemento desde el adaptador personalizado sin reemplazar la función getItem ().

 Object obj = myListAdapter.getItem(position); 

Anulé la función

 @Override public Object getItem(int position) { return myList.get(position); } 

Y voila! Consiguió la apertura de la actividad derecha. ( Facepalm lo sé ..) ¡Gracias por sus respuestas de todos modos!

Esto sucede porque su CustomAdapter utiliza su primer cursor no el filtrado

Usted puede utilizar esto en su definición del adaptador:

 public Cursor swapCursor(Cursor c1) { super.swapCursor(c1); c = c1; notifyDataSetChanged(); return c; } 

Y en su uso de la actividad de la llamada

 YourCustomAdapter.swapCursor(FilteredCursor); 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.