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. AJAX初步

    1.什么是AJAX 客户端与服务器,可以在[不必刷新整个浏览器]的情况下,与服务器进行异步通讯的技术,即,AJAX是一个[局部刷新]的[异步]通讯技术: AJAX不是全新的语言,是2005年Googl ...

  2. HDU 3966 基础树链剖分

    题意:给一棵树,并给定各个点权的值,然后有3种操作:I C1 C2 K: 把C1与C2的路径上的所有点权值加上KD C1 C2 K:把C1与C2的路径上的所有点权值减去KQ C:查询节点编号为C的权值 ...

  3. 基于K2 BPM的大型连锁企业开关店选址管理解决方案

    业内有句名言:“门店最重要的是什么?第一是选址,第二是选址,第三还是选址” 选址是一个很复杂的综合性商业决策过程,需要定性考虑和定向分析.K2开关店&选址管理方案重点关注:如何开出更好的店?在 ...

  4. android 通知栏 notifcation

    http://blog.csdn.net/guolin_blog/article/details/50945228  郭神的博客 final NotificationManager manager = ...

  5. 自定义ImageView

    package com.example.myimageview; import android.content.Context;import android.graphics.Bitmap;impor ...

  6. swing Event-Listener-Adapter 对照表

    Source Event Event Listener AbstractButton (JButton,JToggleButton, JCheckBox,JRadioButton ActionEven ...

  7. C语言中最常用的三种输入输出函数scanf()、printf()、getchar()和putchar()

    本文给大家介绍C语言中最常用的三种输入输出函数scanf().printf().getchar()和putchar(). 一.scanf()函数格式化输入函数scanf()的功能是从键盘上输入数据,该 ...

  8. @ModelAttribute注解的作用

    @ModelAttribute注解的作用:1.放在方法上注解不带属性: 方法无返回值: 执行其他方法时,先执行该注解标记方法. 如果方法中有将一些属性放入model的操作,其他方法model中也会共享 ...

  9. 深入剖析HADOOP程序日志

    深入剖析HADOOP程序日志 前提 本文来自于 博客园 逖靖寒的世界 http://gpcuster.cnblogs.com 了解log4j的使用. 正文 本文来自于 博客园 逖靖寒的世界 http: ...

  10. C++学习之类的构造函数、析构函数

    在C++的类中,都会有一个或多个构造函数.一个析构函数.一个赋值运算操作符.即使我们自己定义的类中,没有显示定义它们,编译器也会声明一个默认构造函数.一个析构函数和一个赋值运算操作符.例如: //声明 ...