mi código aquí es terriblemente incorrecto, y no estoy seguro de cómo lo haría correctamente. Tengo un Spinner que se rellena desde una consulta de base de datos SQLite a través de un CursorAdapter. Necesito obtener el texto (valor) del elemento seleccionado actualmente. Probé esta basura:obteniendo el valor de cadena de un Spinner respaldado por CursorAdapter desde una consulta SQL en Android
((Cursor)prdSpn.getItemAtPosition(prdSpn.getSelectedItemPosition())).getString(prdSpn.getSelectedItemPosition())
para obtener el texto, pero se bloquea cada vez. ¿Cuál es la forma correcta de hacer esto? aquí hay algo de código adicional que pueda ser relevante:.
/// qc defined above as a SimpleCursorAdapter
/////////setup product selection spinner from db
prdSpn = (Spinner)findViewById(R.id.prd_spn);
Cursor prdCur = null;
try {
prdCur = mDb.query(smsDbSchema.ProductSchema.TABLE_NAME, null, null, null, null, null, null);
} catch(Exception e) {
Log.e("smsdb", e.toString());
}
prdCur.moveToFirst();
startManagingCursor(prdCur);
qc = new SimpleCursorAdapter(
this,
android.R.layout.simple_spinner_item,
prdCur,
new String[] {smsDbSchema.ProductSchema.COLUMN_NAME},
new int[] {android.R.id.text1}
);
qc.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
prdSpn.setAdapter(qc);
Terminé implementando algo como esto. He editado este comentario debajo de su publicación anterior para mostrar la implementación exacta. Gracias por la respuesta. – moonlightcheese
@moonlightcheese: Me alegro de haber sido de ayuda. – Squonk
Fue realmente útil gracias (@MisterSquonk y @moonlightcheese) –