1

我正在尝试使用数据库中的数据填充微调器。代码在子程序中。一切都执行了,但微调器是空的。如果我将代码复制到“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 并进行查询来确认。我还可以从数据库中提取名称并使用“showMatchNames”子例程中的简单 ArrayAdapter 填充微调器。

我很确定这很简单,但我已经盯着这个看了好几个小时了,无法让它工作。

任何帮助都会非常受欢迎。

4

0 回答 0