2012-02-23 68 views
1

这是我的代码:添加标题,注释和图像

private ArrayList<Receipt> receipts = new ArrayList<Receipt>(); 
    ArrayAdapter<Receipt> adapter; 

// In onCreate 
    adapter=new ArrayAdapter<Receipt>(this,android.R.layout.simple_list_item_1, receipts); 
    listView.setAdapter(adapter); 
//---------------------------------  

    private void addReceiptInListView(Receipt receipt) 
    { 
      adapter.notifyDataSetChanged(); 
    } 

现在的收据含有以下在它的东西

1-标题, 2-评论 3-参照号 4-图片

我想在我添加的listView中显示所有这些东西。我怎样才能表明这一点。

感谢提前:)

+0

你知道如何为你的listview创建** Custom Adapter **吗?以下是示例:http://goo.gl/hSjPL – 2012-02-23 07:18:27

回答

1

ArrayAdapter,默认情况下,将只显示一个的String列表,因此它不能显示完整的Receipt。要显示您的Receipt对象的额外信息,必须实现您自己的ArrayAdapter并提供该行的自定义布局,然后手动将Receipt数据与ArrayAdaptergetView()方法中的视图绑定。

这是关于实现您自己的自定义适配器的link with a tutorial

1

最初设计个性化的列表项的布局文件..假设 “sample.xml中”

然后在适配器中查看方法将值设置为属性

@Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     if (convertView == null) { 
      convertView = LayoutInflater.from(getContext()).inflate(
        R.layout.sample, null); 

     } 
     TextView title= (TextView) convertView.findViewById(R.id.title); 
     TextView comments= (TextView) convertView.findViewById(R.id.comments); 

     title.setText(getItem(position).getTitle()); 
     comments.setText(getItem(position).getComments()); 
     ...... 
     return convertView; 
    }