Spinner пуст, пытается заполнить SimpleCursorAdaptor в подпрограмме - PullRequest
1 голос
/ 07 октября 2011

Я пытаюсь заполнить счетчик данными из базы данных. Код находится в подпрограмме. Все выполняется, но счетчик пуст. Если я копирую код в «onCreate (Bundle saveInstanceState)», он работает нормально. Я думаю, что у меня есть проблема контекста, но я не могу понять это.

Вот подпрограмма:

public void showMatchNames (){      
    Cursor c;

    String sMatchName = "MatchTable";        
    c = db.query(sMatchName, new String[]{KEY_ROWID, KEY_TITLE}, null, null, null, null, null);
    if(c.moveToFirst()){

        SimpleCursorAdapter MatchAdapter = new SimpleCursorAdapter(this,android.R.layout.simple_spinner_item, c, new String[]{KEY_TITLE}, new int[]{android.R.id.text1});
        MatchAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        Spinner spin2 = (Spinner)this.findViewById(R.id.spinner2);
        spin2.setAdapter(MatchAdapter);
    }
    scrMatchView.setOnItemSelectedListener(new mySpinnerListener());            
    c.close(); // Done with Cursor so close it
}

В базе данных есть данные, подтвержденные экспортом в SQliteMan и выполнением запроса. Я также могу извлечь имена из базы данных и заполнить спиннер простым ArrayAdapter из подпрограммы "showMatchNames".

Я почти уверен, что это что-то простое, но я смотрю на это уже несколько часов и не могу заставить его работать.

Любая помощь будет приветствоваться.

...