2016-11-15 40 views
0

遵循Stackoverflow上此question的教程。查询数据库后,我有变量results中的记录。如何格式化结果以便它可以是数组。下面是一个例子:以逗号分隔格式化数据库结果

lvActivityCategory.setAdapter(new categoryCursorAdaptor(this, new String[] { "data1", "data2" })); 

这是我目前正与代码:

 List<String> arrayCatNames = new ArrayList<String>(); 
     String query = "SELECT * FROM category ORDER BY name ASC"; 
     Cursor results = myDB.rawQuery(query, null); 
     while(results.moveToNext()){ 
      String catName = results.getString(results.getColumnIndex("name")); 
      arrayCatNames.add(catName); 
     } 
     android.text.TextUtils.join(",", arrayCatNames); 
     lvActivityCategory = (ListView) findViewById(R.id.lvActivityCategory); 
     lvActivityCategory.setAdapter(new categoryCursorAdaptor(this, new String[] { arrayCatNames })); //arrayCatNames should be e.g. "item 1", "item 2", "item 3" 
+0

您是否尝试将ArrayList arrayCatNames转换为数组? –

+0

@HtmlTosin是的,这是正确的 –

回答

1

好吧,这样做下面,while循环

String[] catNamesArr = new String[arrayCatNames.size()]; 
catNamesArr = arrayCatNames.toArray(catNamesArr); 

您可以了解后更阅读此问题:Convert ArrayList<String> to String[] array

+1

感谢它的工作! –