2011-04-04 70 views
5

我必须在列表视图中显示数据库中的数据。我通过分类获取组中的所有数据并显示在列表视图中。我已经使用了下面的代码。Android分类列表与标题

private ListView infos; 


@Override 
public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    ......... 
    ......... 
    infos = new ListView(this); 
    model = infoDataHelper.getCursor(addType); 
    adapter = new InfoAdapter(model); 
    infos.setAdapter(adapter); 
    ......... 
    ......... 
} 


class InfoAdapter extends CursorAdapter { 

    public InfoAdapter(Cursor c) { 
    super(getParent(), c); 
    // TODO Auto-generated constructor stub 
    } 

    @Override 
    public void bindView(View row, Context ctxt, Cursor c) { 
    InfoHolder holder = (InfoHolder) row.getTag(); 
    holder.populateTable(c, infoDataHelper); 
    } 

    @Override 
    public View newView(Context ctxt, Cursor c, ViewGroup parent) { 

    LayoutInflater inflater = getLayoutInflater(); 

    View row; 
     row = inflater.inflate(R.layout.inforow, parent, false); 

    InfoHolder holder = new InfoHolder(row); 
    row.setTag(holder); 
    table_id++; 
    return (row); 
    } 

} 

现在我想添加标题categoty名字的结果集,这样它看起来像但─

Categoty Fruit 
    Apple 
    Mango 
    Grape 

Category Flower 
Rose 
Lotus 
Jesmine 

等..

我如何能做到吗? addHeaderView是否适用于它?如果是这样,我可以如何添加它?

回答

2

嘿,我以前也有同样的问题。经过大量的搜索,我发现这个教程http://eshyu.wordpress.com/2010/08/15/cursoradapter-with-alphabet-indexed-section-headers/。它为我工作。

+0

在本教程中,它使用了AlphabetIndexer类来获取索引。但对我来说它不是字母顺序。它是分类显示。如何替换AlphabetIndexer? – 2011-04-04 14:12:15

+0

嘿,我得到了与你的问题有关的东西。 http://stackoverflow.com/questions/1966802/android-listview-headers – 2011-04-04 14:15:40