ListView中的Android Display ArrayList <string []>

时间:2016-07-28 10:58:45

标签: java android sqlite listview arraylist

我目前正在为我的公司申请一个申请。 该应用程序正在使用存储在外部存储上的sqlite数据库。

现在我想在ListView中显示数据库的所有表名

我获得表名的部分如下所示:

&#13;
&#13;
    public ArrayList < String[] > getDBTables() {
      SQLiteDatabase db = this.getReadableDatabase();

      Cursor c = db.rawQuery(
        "SELECT name FROM sqlite_master WHERE type='table'", null);
      ArrayList < String[] > result = new ArrayList < String[] > ();
      int i = 0;
      result.add(c.getColumnNames());
      for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) {
        String[] temp = new String[c.getColumnCount()];
        for (i = 0; i < temp.length; i++) {
          temp[i] = c.getString(i);
          System.out.println("TABLE - " + temp[i]);

        }
        result.add(temp);

      }

      return result;
    }
&#13;
&#13;
&#13;

它工作得很好。 但现在我必须在ListView中显示它,并且问题就出现了。

我尝试过这样:

&#13;
&#13;
    		dbTablesView = (ListView) findViewById(R.id.listView);


	ArrayList<String[]> tables;
	tables=datasource.getDBTables();

	ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, tables );

	dbTablesView.setAdapter(arrayAdapter);
&#13;
&#13;
&#13;

但它告诉我,我不能使用java.util.ArrayList来创建适配器。

我真的很感谢你的帮助。

0 个答案:

没有答案