从列表中填充Listview

时间:2014-02-05 04:02:03

标签: android listview

我试图从列表中填充列表视图,这是创建我的列表的方法:

 public List<produto> buscarProdutoPorNome(String nome){  
    List<produto> lista = new ArrayList<produto>();  

    String[] columns = new String[]{  
       "upc", "nome", "descricao", "qtd", "nec"};  
    String[] args = new String[]{nome+"%"};  

    db = dbHelper.getWritableDatabase();  
    Cursor c = db.query("produto", columns,   
       "nome like ?", args, null, null, "nome");  

    c.moveToFirst();  
    while(!c.isAfterLast()){  
      produto p = fillProduto(c);  
      lista.add(p);  
      c.moveToNext();  
    }  
    c.close();  
    db.close();  
    return lista;  
  }  

我想列出,但我不知道怎么样,有人可以帮我吗?

List<produto>lista = produtosDB.buscarProdutoPorNome(""); 

2 个答案:

答案 0 :(得分:0)

为什么不将List转换为数组:

producto[] array = lista.toArray(new producto[lista.size()]);

然后填充到ListView

setListAdapter(new ArrayAdapter<producto>(this, R.layout.list_item, array));  

答案 1 :(得分:0)

List<String> array = new ArrayList<String>();

// Populate the array list from the database

final ListView list = (ListView) findViewById(R.id.listview);

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

list.setAdapter(adapter);

这是最简单的方法,但仅适用于字符串列表。要使用自定义类列表的适配器,您需要在res / layout中创建自定义适配器类和自定义视图布局。在此处查找有关自定义适配器的更多信息:

http://www.vogella.com/tutorials/AndroidListView/article.html#adapterown