码迷,mamicode.com
首页 > 其他好文 > 详细

ListView多条目加载

时间:2017-12-08 21:02:03      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:ext   com   public   layout   switch   time   settag   uil   get   

  •  在listView适配器重写的四个方法的基础上,再手动重写两个方法
  •  - 分别是:getViewTypeCount(),确定加载条木有几种数据类型
  •  - getItemViewType(int position)第二个是对数据进行判断和分类的
  •  - 代碼塊--XlistView适配器
//有几个条目类型   
    @Override  
    public int getViewTypeCount() {  
        return 2;  
    }
//判断怎样分辨每个条目的位置  
    @Override  
    public int getItemViewType(int position) {  
        if(position%2==0){  
            return 0;  
        }else{  
            return 1;  
        }
    }
  • getView获取控件设置数据中
//得到类型
int type = getItemViewType(position);

/*  switch (type){
                case 0:     //textView
                    break;
                case 1: //
                    break;
                case 2:
                    break;
            }*/


int type = getItemViewType(position);
        switch (type) {
            case 0:
                if (convertView == null) {//不同的布局
                    convertView = View.inflate(context, R.layout.lv_layout, null);

                    holder = new ViewHolder(convertView);
                    convertView.setTag(holder);
                } else {
                    holder = (ViewHolder) convertView.getTag();
                }

                holder.title.setText(data_list.get(position).getNews_title());
                holder.time.setText(data_list.get(position).getNews_summary());
                ImageLoader.getInstance().displayImage(data_list.get(position).getPic_url(), holder.img);

                break;
            case 1:
                if (convertView == null) {//不同的布局
                    convertView = View.inflate(context, R.layout.lv_layout2, null);

                    holder2 = new ViewHolder2(convertView);

                    convertView.setTag(holder2);
                } else {
                    holder2 = (ViewHolder2) convertView.getTag();
                }

                holder2.title_2.setText(data_list.get(position).getNews_title());

                break;

        }

多条目加载时ListView的优化---复用convertView,减少findViewById的次数

ListView多条目加载

标签:ext   com   public   layout   switch   time   settag   uil   get   

原文地址:http://www.cnblogs.com/Nigeria/p/8006795.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!