如何创建动态列表视图以在android中的列表行中显示文本和图像?

时间:2011-05-20 11:41:15

标签: android android-listview

我需要创建一个动态列表视图,显示数据库中的图像和文本。 列表中的行数取决于数据库表中的行数。我需要将列表显示为图像,文本和用于删除或编辑列表中每一行的按钮。

请找到一个正确的方法来执行此操作。我已经完成了很多教程,但是我找不到从数据库创建的动态列表视图,它显示图像,文本和按钮。 请帮忙。

谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用Android中提供的BaseAdapter类在android中创建动态列表视图。您可以创建一个扩展BaseAdapter的类。您需要创建两个xml文件。一个用于ListView,另一个用于在ListView中显示的内容。

例如:

private class ListAdapter extends BaseAdapter  
{   
    LayoutInflater inflater;  
    ViewHolder viewHolder;                        // your private class ViewHolder please see at bottom

    public ListAdapter(Context context)    
    {
        inflater = LayoutInflater.from(context);
    }
    public int getCount()  
    {
        return _empList.size();        // public ArrayList<Emp_detail> _empList = new ArrayList<Emp_detail>();
    }

    public Object getItem(int position)   
    {
        return position;
    }

    public long getItemId(int position)
    {
        return position;
    }

    public View getView(final int position, View convertView,
        ViewGroup parent)  
    {
        if (convertView == null) {
            convertView = inflater.inflate(R.layout.emp_list_row, null); // Your second xml file for contents in ListView

            viewHolder = new ViewHolder();
            viewHolder.txt_idno = (TextView) convertView
                .findViewById(R.id.txt_idno);
        } 
        else  
        {
            viewHolder = (ViewHolder) convertView.getTag();
        }

        viewHolder.txt_idno
            .setText(_empList.get(position).getIDNO().trim());
        return convertView;
    }

}

private class ViewHolder {
    TextView txt_idno;
}