SingleImageAdapter.java 2.91 KB
package com.cnlive.goldenline.ui.adapter;

import android.content.Context;
import android.graphics.Bitmap;
import android.support.annotation.Nullable;
import android.support.v4.graphics.drawable.RoundedBitmapDrawable;
import android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;

import com.bumptech.glide.Glide;
import com.bumptech.glide.request.target.BitmapImageViewTarget;
import com.cnlive.goldenline.R;
import com.cnlive.goldenline.ui.base.BaseListViewAdapter;
import com.cnlive.goldenline.ui.widget.coverflow.ViewUtil;

/**
 * Description:
 * Created on 2017/3/3
 * Author : 萧
 */
public class SingleImageAdapter extends BaseListViewAdapter<String> {

    public SingleImageAdapter(Context context) {
        super(context);
    }

    int designWidth, designHeight;

    public SingleImageAdapter(Context context, int designWidth, int designHeight) {
        super(context);
        this.designWidth = designWidth;
        this.designHeight = designHeight;
    }

    @Override
    public View getView(int position, @Nullable View convertView, ViewGroup parent) {
        final SingleImageAdapter.ImageViewHolder imgHolder;
        if (convertView == null) {
            convertView = inflater.inflate(R.layout.layout_single_img, parent, false);
            imgHolder = new SingleImageAdapter.ImageViewHolder();
            imgHolder.img_head = (ImageView) convertView.findViewById(R.id.single_img);
            if (designHeight > 0 && designWidth > 0) {
                ViewGroup.LayoutParams params = imgHolder.img_head.getLayoutParams();
                params.width = ViewUtil.Dp2Px(context, designWidth);
                params.height = ViewUtil.Dp2Px(context, designHeight);
                imgHolder.img_head.setLayoutParams(params);
            }
            convertView.setTag(imgHolder);
        } else {
            imgHolder = (ImageViewHolder) convertView.getTag();
        }
//            LogUtils.LOGE("SingleImageAdapter.getView position = " + position + " dataList.get(position) = " + dataList.get(position));
//        Glide.with(context).load("http://shtml.asia-cloud.com/ZZSY/list_test3.png").into(imgHolder.img_head);
//        Glide.with(context).load(dataList.get(position)).into(imgHolder.img_head);
        Glide.with(context).load(dataList.get(position)).asBitmap().centerCrop().into(new BitmapImageViewTarget(imgHolder.img_head) {
            @Override
            protected void setResource(Bitmap resource) {
                RoundedBitmapDrawable circularBitmapDrawable = RoundedBitmapDrawableFactory.create(context.getResources(), resource);
                circularBitmapDrawable.setCircular(true);
                imgHolder.img_head.setImageDrawable(circularBitmapDrawable);
            }
        });

        return super.getView(position, convertView, parent);
    }

    class ImageViewHolder {
        ImageView img_head;
    }
}