OnCreateContextMenu se invoca con un valor nulo para ContextMenuInfo

Estoy intentando utilizar un ContextMenu.
He hecho esto con éxito para una ListActivity simple usando SimpleCursorAdapter.
En movimiento quiero reemplazar SimpleCursorAdapter con CursorAdapter pero aún conservar el comportamiento ContextMenu, por lo que he añadido las dos funciones obligatorias de anulación bindView y newView

public View newView(Context context, Cursor cursor, ViewGroup parent) { View view = mLayoutInflater.inflate(R.layout.check_row, parent, false); registerForContextMenu(view); return view; } 

Tenga en cuenta el registerForContextMenu que reemplaza el registerForContextMenu (getListView ()) en el método onCreate de ListActivity. Encontré esto necesario para obtener una llamada a onCreateContextMenu (…)

Todo esto funciona (filas creadas con los widgets esperados, callbacks en ellos trabajando etc etc). Todo eso es excepto que el parámetro ContextMenuInfo suministrado a onCreateContextMenu (…) ahora es nulo – me detiene el acceso a la rowId.
¿Hay otro truco para realizar – tal vez en el método bindView (…) del CursorAdapter?

Estoy respondiendo a la pregunta – pero quisiera señalar que 'commonsware.com' siempre las pistas y la dirección, ver más arriba.
El problema
– El uso de CheckBox en el diseño de la fila repercute en el uso de los menús contextuales
– CheckedTextView es, creo, destinado a la multi-selección, no se presta a la inicialización del estado marcado.

La solución que adopte hace lo siguiente
1. Utilice CheckedTextView
2. Extender desde CursorAdapter para inicializar el estado marcado durante bindView (…)
Nota: Debe gestionar la visualización de los iconos correctos también
3. Gestionar el estado de CheckedTextView en onListItemClick (…) y grabarlo en dBase, sin olvidar actualizar el cursor.

Ese no es el enfoque correcto. Registra el menú contextual para ListView , no las filas. Llamar registerForContextMenu() por adelantado, tal vez en onCreate() después de inflar el diseño.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.