关闭

自定义LISTVIEW

120人阅读 评论(0) 收藏 举报
package cn.edu.siso;


/** 表示一个文件实体 **/
public class FileInfo {
    public String Category;
    public String Status;
    public String Theme;
    public String PublicationTime;
    public String Clicks;
    public String Department;
    

}

package cn.edu.siso;

import java.util.List;
import java.util.Map;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

public  class FileAdapter extends BaseAdapter{
    //生成一个inflater对象
    private LayoutInflater inflater;
    private List<Map<String,Object>> FileList;
    
    
    
    public  FileAdapter(Context context,List<Map<String,Object>> filelist){
        FileList=filelist;
        //
        inflater=LayoutInflater.from(context);
    }
    //返回当前adapter中有多少个item
    public int getCount() {
        // TODO Auto-generated method stub
        return FileList.size();
    }
    //根据位置得到相应的item对象
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return FileList.get(position);
    }
    //根据位置得到相应的item的ID
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        ViewHolder holder = null;
        if(convertView==null){
            //填充每一行item如何显示的XML
            //调用inflater对象的inflate方法,可以生成一个View对象
            convertView=inflater.inflate(R.layout.file_item, null);
            holder = new ViewHolder();
            //得到View中得控件
            holder.category=(TextView)convertView.findViewById(R.id.Category);    
            holder.clicks=(TextView)convertView.findViewById(R.id.Clicks);    
            holder.status=(TextView)convertView.findViewById(R.id.Status);    
            holder.publicationTime=(TextView)convertView.findViewById(R.id.PublicationTime);    
            holder.theme=(TextView)convertView.findViewById(R.id.Theme);    
            holder.department=(TextView)convertView.findViewById(R.id.Department);    
            
            convertView.setTag(holder);
        }else{
            holder=(ViewHolder)convertView.getTag();
        }
    holder.category.setText((String)FileList.get(position).get("Category"));
    holder.clicks.setText((String) FileList.get(position).get("Clicks"));
    holder.status.setText((String)FileList.get(position).get("Status"));
    holder.publicationTime.setText((String)FileList.get(position).get("PublicationTime"));
    holder.theme.setText((String)FileList.get(position).get("Theme"));
    holder.department.setText((String)FileList.get(position).get("Department"));
    //返回对象
    return convertView;
    }
    
    
    
    public class ViewHolder{
        public TextView category;
        public TextView clicks;
        public TextView status;
        public TextView publicationTime;
        public TextView theme;
        public TextView department;
            
        }    
}

剩下的直接setadapter就行了
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1326次
    • 积分:36
    • 等级:
    • 排名:千里之外
    • 原创:3篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档