simplecursoradapter未在setSingleChoiceItems AlertDialog中填充

时间:2013-09-03 13:35:52

标签: android dialog cursor

AlertDialog总是显示为空,这是我传递String数组而不是适配器的代码,但是适配器是空的。我错过了什么吗?

.Builder builder =   new AlertDialog.Builder(MainActivity.this);
builder.setTitle("Show dialog");
int selected =0; // select at 0


SimpleCursorAdapter Adapter =new SimpleCursorAdapter(MainActivity.this, android.R.layout.simple_list_item_single_choice,
            null, new String[]{"title","title2"}, new int[]{android.R.id.text1});

builder.setSingleChoiceItems(
        Adapter,
        selected ,
        new DialogInterface.OnClickListener() {

    @Override
    public void onClick(
            DialogInterface dialog,
            int which) {

        Toast.makeText(
                MainActivity.this,
                "Select "+choiceList[which],
                Toast.LENGTH_SHORT
                ).show();
    }
});
AlertDialog alert = builder.create();
alert.show();   

1 个答案:

答案 0 :(得分:0)

很抱歉迟到的回复。我在遇到类似问题时发现了你的问题。如果您实际上没有从数据库获取数据,为什么要传递cursorAdapter?我只想创建一个新的ArrayAdapter。你试过了吗?

ArrayAdapter<String> Adapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.select_dialog_singlechoice, new String[]{"title","title2"});

请注意,我使用“android.R.layout.select_dialog_singlechoice”而不是“android.R.layout.simple_list_item_single_choice”,因为您的列表位于AlertDialog中。希望这有帮助!

汤姆。