BaseAdapter with sections,listview - 添加游标列表数据

时间:2012-09-15 14:58:00

标签: java android android-layout

我是新来的,如果有人可以帮我解决我一直遇到的这场小危机,我会很高兴。我一直在关注Jeff Sharkeys单独列表适配器教程,可以找到here并且我已经完全适应了他如何解释它。

我的问题是我有一个数据库,预制一个有一个表,我试图使用Jeffs适配器将提取的数据放入列表视图。我需要根据Category ID列将这些数据放在不同的部分。

我目前从中提取数据的表是Food表,它有6列,categoriID,menuID,Item,Description,price和PK _id

我的数据库在其他活动中正常工作我使用SimpleCursorAdapter将数据绑定到列表视图。 (来自其他表格)

我在Database Helper类中使用以下方法来检索我需要的数据

public List<FoodModel> getData(String catid, String menuid) {
            List<FoodModel> FoodListModel = new ArrayList<FoodModel>();
    Cursor cursor = myDataBase.query(FOOD_TABLE, new String [] {FOODITEM_COLUMN, FOODITEMDESCRIPTION_COLUMN,FOODPRICE_COLUMN}, "catid = ? AND menuid = ?",
      new String[] { catid, menuid},null, null, null, null);   

    if (cursor.moveToFirst()){
    do{
        FoodModel FoodModel = new FoodModel();
            FoodModel.setItem(cursor.getString(0));
            FoodModel.setdescrription(cursor.getString(1));
            FoodModel.setprice(Double.parseDouble(cursor.getString(2)));
            FoodListModel.add(FoodModel);} while (cursor.moveToNext());
    }
return FoodListModel;
 }

Food Model类是存储游标数据的标准get set类。

这个公共方法在我的主要活动(jeffs ListSample.java)中相应地工作我使用

输出到日志cat所需的信息
   Log.d("Reading: ", "Testing Cursor");
            List<FoodModel> Data1 =  dba.getData("1", "1");
            for (FoodModel fd : Data1){
                String log = "Item: "+fd.getitem()+" ,Description: " + fd.getdescription() + " ,Price: " + fd.getprice(); 
                Log.d("Name: ", log);

这会输出我需要放入SeperateListAdapter的1个部分但是要记录到日志中的所有数据的列表

我想要输出到列表视图的3件事是项目,描述和价格。

我的问题是如何将此数据添加到正确部分下的列表视图中?

选择以Jeff显示的方式手动插入

   List<Map<String,?>> security = new LinkedList<Map<String,?>>();  
                    security.add(createItem("Remember passwords", "Save usernames and passwords for Web sites"));  
                    security.add(createItem("Clear passwords", "Save usernames and passwords for Web sites"));  
                    security.add(createItem("Show security warnings", "Show warning if there is a problem with a site's security")); 

我不想通过粘贴我的所有课程开始我第一次使用本网站的经历,因为这是我第一次使用这个网站,我的英语不是最好的,我花了一段时间写这个我希望作为一个问题是可以接受的,如果有人可以帮助我或指出我正确的方向,我会非常满意。

编辑:很乐意发布我的其余代码,并没有用大量信息轰炸所有人

0 个答案:

没有答案