ListView多条目加载

Posted 芳草玫瑰下

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ListView多条目加载相关的知识,希望对你有一定的参考价值。

  •  在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多条目加载的主要内容,如果未能解决你的问题,请参考以下文章

片段中ListView的setOnItemClickListener

listview加载不同条目

从片段中ListView的onItemClick开始Activity

按下后退按钮时正在重新创建 Listview 片段

填充 ListView 很慢,Fragment 加载不顺畅

从 Firebase 向 ListView 添加条目