如何在警报对话框中获取列表?

How to get list in alert dialog?

我想设置一个带有标题列表的警告对话框。我有数据库和 table 的时间 table。

时间 table 有标题栏。我想从时间 table.

获取标题列表

我尝试了一些代码,但它不起作用。我在 TimeTableHelper 中创建了查询以获取 table 的列表。但我不知道如何把它放在警告对话框中。

有人可以帮忙吗?

selectTable.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            TimeTableHelper th = new TimeTableHelper(getApplicationContext());
            List<String> tables = new ArrayList<String>(th.getTitle());

            AlertDialog.Builder alertDialog = new AlertDialog.Builder(AddEventActivity.this);
            LayoutInflater inflater = getLayoutInflater();
            View convertView = (View) inflater.inflate(R.layout.alertlistrow, null);
            alertDialog.setView(convertView);
            ListView lv = (ListView) convertView.findViewById(R.id.listView1);
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, tables);
            lv.setAdapter(adapter);
            alertDialog.show();

        }
    });

如果我尝试在其中添加列表,我会收到无法解析构造函数 ArrayAdapter 的错误。

ArrayAdapter 适配器 = new ArrayAdapter(this, android.R.layout.simple_list_item_1, tables);

如何做到这一点?

您需要传递 activity 上下文,但在 onClick 方法内部 this 表示 onClickListener 接口。

改变

ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, tables);

// Replace MyActivity with the activity you are currently in or getActivity() if inside a fragment
ArrayAdapter adapter = new ArrayAdapter(MyActivity.this, android.R.layout.simple_list_item_1, tables);