mój kod jest okropnie zły i nie jestem pewien, jak poprawnie to zrobić. Mam Spinner, który jest wypełniany z kwerendy bazy danych SQLite za pośrednictwem CursorAdapter. Potrzebuję uzyskać tekst (wartość) z aktualnie wybranego elementu. próbowałem tego śmiecia:Uzyskiwanie wartości ciągu od Spinnera wspieranego przez CursorAdapter z zapytania SQL w Androidzie
((Cursor)prdSpn.getItemAtPosition(prdSpn.getSelectedItemPosition())).getString(prdSpn.getSelectedItemPosition())
, aby uzyskać tekst, ale za każdym razem ulega awarii. jaki jest właściwy sposób na zrobienie tego? oto niektóre dodatkowy kod, które mogą być istotne.
/// 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);
Skończyło się na implementowaniu czegoś takiego. Zmodyfikowałem ten komentarz pod Twoim wcześniejszym wpisem, aby pokazać dokładną implementację. Dzięki za odpowiedzi. – moonlightcheese
@moonlightcheese: Cieszę się, że mogłem pomóc. – Squonk
To było naprawdę pomocne thanx (@MisterSquonk i @moonlightcheese) –