package com.baidu.base;

import java.util.List;

import com.baidu.vo.Mydata;
import com.bwie.yd.R;
import com.lidroid.xutils.BitmapUtils;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

public class Shujubase extends BaseAdapter {

private List<Mydata> list;
    private Context con;

public Shujubase(Context con, List<Mydata> list) {

this.list = list;
        this.con = con;
    }

public int getCount() {
        return list.size();
    }

@Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return null;
    }

@Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }

public View getView(int position, View convertView, ViewGroup parent) {

int id = 0;
        if (list.get(position).getImage_list() != null)
            id = list.get(position).getImage_list().size();
        Viewholder vh0;
        Viewholder1 vh1;
        Viewholder2 vh2;
        Viewholder3 vh3;
        if (convertView == null) {
            switch (id) {
            case 0:
                if (list.get(position).getMiddle_image() != null) {

convertView = View.inflate(con, R.layout.shujubase1, null);
                    vh1 = new Viewholder1();
                    vh1.title = (TextView) convertView.findViewById(R.id.titel);
                    vh1.iv4 = (ImageView) convertView.findViewById(R.id.image4);
                    convertView.setTag(vh1);
                    BitmapUtils bi = new BitmapUtils(con);
                    bi.display(vh1.iv4, list.get(position).getMiddle_image()
                            .getUrl());
                    vh1.title.setText(list.get(position).getTitle());

} else {

convertView = View.inflate(con, R.layout.shujubase, null);
                    vh0 = new Viewholder();
                    vh0.title = (TextView) convertView.findViewById(R.id.titel);
                    convertView.setTag(vh0);
                    vh0.title.setText(list.get(position).getTitle());

}

break;

case 1:
                if(list.get(position).getImage_list()!=null){
                    convertView = View.inflate(con, R.layout.shujubase2, null);
                    vh2 = new Viewholder2();
                    vh2.title = (TextView) convertView.findViewById(R.id.titel);
                    vh2.iv4 = (ImageView) convertView.findViewById(R.id.image4);
                    vh2.iv5 = (ImageView) convertView.findViewById(R.id.image5);
                    convertView.setTag(vh2);
                    BitmapUtils bu2 = new BitmapUtils(con);
                    bu2.display(vh2.iv4,
                            list.get(position).getImage_list().get(0).url);
                    bu2.display(vh2.iv5,
                            list.get(position).getImage_list().get(1).url);
                    vh2.title.setText(list.get(position).getTitle());
                }else{
                convertView = View.inflate(con, R.layout.shujubase1, null);
                vh1 = new Viewholder1();
                vh1.title = (TextView) convertView.findViewById(R.id.titel);
                vh1.iv4 = (ImageView) convertView.findViewById(R.id.image4);
                convertView.setTag(vh1);
                BitmapUtils bu1 = new BitmapUtils(con);
                bu1.display(vh1.iv4,
                        list.get(position).getImage_list().get(0).url);
                vh1.title.setText(list.get(position).getTitle());
                }
                break;
            case 2:
                convertView = View.inflate(con, R.layout.shujubase2, null);
                vh2 = new Viewholder2();
                vh2.title = (TextView) convertView.findViewById(R.id.titel);
                vh2.iv4 = (ImageView) convertView.findViewById(R.id.image4);
                vh2.iv5 = (ImageView) convertView.findViewById(R.id.image5);
                convertView.setTag(vh2);
                BitmapUtils bu2 = new BitmapUtils(con);
                bu2.display(vh2.iv4,
                        list.get(position).getImage_list().get(0).url);
                bu2.display(vh2.iv5,
                        list.get(position).getImage_list().get(1).url);
                vh2.title.setText(list.get(position).getTitle());
                break;
            case 3:
                convertView = View.inflate(con, R.layout.shujubase3, null);
                vh3 = new Viewholder3();
                vh3.titel = (TextView) convertView.findViewById(R.id.titel);
                vh3.iv4 = (ImageView) convertView.findViewById(R.id.image4);
                vh3.iv5 = (ImageView) convertView.findViewById(R.id.image5);
                vh3.iv6 = (ImageView) convertView.findViewById(R.id.image6);
                convertView.setTag(vh3);
                BitmapUtils bu3 = new BitmapUtils(con);
                bu3.display(vh3.iv4,
                        list.get(position).getImage_list().get(0).url);
                bu3.display(vh3.iv5,
                        list.get(position).getImage_list().get(1).url);
                bu3.display(vh3.iv6,
                        list.get(position).getImage_list().get(2).url);
                vh3.titel.setText(list.get(position).getTitle());

break;

}

}

return convertView;
    }

class Viewholder {

TextView title;
    }

class Viewholder1 {
        TextView title;

ImageView iv4;
    }

class Viewholder2 {        ImageView iv4;        TextView title;

ImageView iv5;
    }

class Viewholder3 {
        ImageView iv4;
        ImageView iv5;
        ImageView iv6;
        TextView titel;
    }
}

Base适配器的更多相关文章

  1. Spring映射器、适配器、解析器

    1 springmvc的映射器和适配器 1.1springmvc的映射器 根据客户端请求的url,找到处理本次请求的handler(处理器),将url和controller关联起来 1.2spring ...

  2. 设计模式之美:Adapter(适配器)

    索引 别名 意图 结构 参与者 适用性 效果 相关模式 实现 实现方式(一):简单直接的对象适配器. 实现方式(二):实现双向类适配器. 别名 包装器(Wrapper) 意图 将一个类的接口转换成客户 ...

  3. 06SpringMvc_适配器

    适配器的主要功能是去找控制器.Action实现了什么接口 本文案例实现的功能是:在页面上输入中文名字,然后在另外一个网页上显示出来. 案例结构:

  4. 【Android Developers Training】 95. 创建一个同步适配器

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  5. SpringMVC的映射器、适配器、解析器

    1.处理器和适配器 1.1springmvc的映射器 根据客户端请求的url,找到处理本次请求的handler(处理器),将url和controller关联起来 1.2springmvc的适配器 对映 ...

  6. SpringMVC源码情操陶冶-HandlerAdapter适配器简析

    springmvc中对业务的具体处理是通过HandlerAdapter适配器操作的 HandlerAdapter接口方法 列表如下 /** * Given a handler instance, re ...

  7. Xamarin.Android 使用 SimpleAdapter 打造 ListView 万能适配器

    第一步:创建 layout1.axml 来展示列表详细内容 <?xml version="1.0" encoding="utf-8"?> <L ...

  8. XamarinAndroid组件教程RecylerView自定义适配器动画

    XamarinAndroid组件教程RecylerView自定义适配器动画 如果RecyclerViewAnimators.Adapters命名空间中没有所需要的适配器动画,开发者可以自定义动画.此时 ...

  9. XamarinAndroid组件教程RecylerView适配器设置动画示例

    XamarinAndroid组件教程RecylerView适配器设置动画示例 [示例1-3]下面将在RecylerView的子元素进行滚动时,使用适配器动画.具体的操作步骤如下: (1)创建一个名为R ...

随机推荐

  1. IT公司100题-17-第一个只出现一次的字符

    问题描述: 在一个字符串中找到第一个只出现一次的字符.例如输入asdertrtdsaf,输出e.   分析: 最简单的方法是直接遍历,时间复杂度为O(n^2). 进一步思考: 字符串中的字符,只有25 ...

  2. 从协议VersionedProtocol开始4——AdminOperationsProtocol、InterTrackerProtocol、JobSubmissionProtocol、TaskUmbilicalProtocol

    1.package org.apache.hadoop.mapred这四个协议都在这个包下. 2.从最简单的AdminOperationsProtocol看, void refreshQueues() ...

  3. Enumeration 接口

    Enumeration是遍历集合元素的一种方法. Enumeration中只有两个方法: 1.hasMoreElements()  测试此枚举是否包含更多的元素. 2.nextElement()  如 ...

  4. root运行chrome

    os:centos7 edit file : /usr/bin/google-chrome Add "--user-data-dir" (without the quotes) a ...

  5. JAVA之关于This的用法

    JAVA之关于This的用法   业精于勤,荒于嬉:行成于思,毁于随.——韩愈 用类名定义一个变量的时候,定义的应该只是一个引用,外面可以通过这个引用来访问这个类里面的属性和方法,那们类里面是够也应该 ...

  6. SpringMvc中的反射

    controller中的方法,是通过反射调用的 spring监控controller中的注解,当命令符合某个注解的时候,通过反射,找到这个注解对应的方法,然后调用,处理完成得到返回值,再根据这个返回值 ...

  7. arguments.callee

    arguments.callee在哪个函数中运行,他就代表哪个函数,一般在匿名函数中.在匿名函数中有时需要自己调用自己,但是由于是匿名函数,没有名字,所以可以用arguments.callee来代替匿 ...

  8. 2016-1-9 Quartz框架的学习,剪裁图片并设置边框

    #import "ViewController.h" @interface ViewController () @end @implementation ViewControlle ...

  9. error C3163: “_vsnprintf”: 属性与以前的声明不一致

    这是在vs2008中遇到的错误,vs2008以前没有,vs2008以后的vs也没有. c:\program files\microsoft visual studio 9.0\vc\include\s ...

  10. META标签的NAME变量

    META标签的NAME变量语法格式是: <META NAME=xxx CONTENT=xxxxxxxxxxxxxxxxxx> 其中xxx主要有下面几种参数: 1. Keywords(关键字 ...