Итак, у меня есть счетчик (spinner2 здесь), который заполняется через ArrayAdapter из таблицы SQLite. При выборе предмета я хочу его
- удалено из БД
- удалено из счетчика
Код ниже действительно работает. За исключением случаев, когда у прядильщика есть только один предмет. Когда это произойдет
Похоже, onItemSelected вообще не вызывается.
Я получаю следующий LogCat
10-01 22:30:55.895: WARN/InputManagerService(1143): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@45a06028
Да, и когда два элемента заполняют счетчик, spinner.getcount () показывает два элемента, так что это не странный случай, когда система считает, что счетчик пуст или что-то в этом роде.
Это код:
public class SpinnerItemSelectListener implements OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
if(parent == spinner2){
if(autoselected){
autoselected=false;
}
else{
//uniqvalarray is the arraymade from pulling data from SQLite and populaitng array adapter
Integer i = uniquevalarray.get(pos);
deleteRow(i);//deletes the row from the database and repopulates the above array.
autoselected=true;//just a boolean to stop autoslecting in onCreate()
//makeAlert(i);initially wanted to make alert box.
loadSpinner2();//reloads the spinner with new data
}
}
}
public void onNothingSelected(AdapterView parent) {
//TODO
}
}