package com.tejia.lijin.app.ui.category;
|
|
import android.annotation.SuppressLint;
|
import android.content.Context;
|
import android.content.Intent;
|
import android.view.LayoutInflater;
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.widget.BaseAdapter;
|
import android.widget.ImageView;
|
import android.widget.TextView;
|
|
import com.bumptech.glide.Glide;
|
import com.nostra13.universalimageloader.core.DisplayImageOptions;
|
import com.nostra13.universalimageloader.core.assist.ImageScaleType;
|
import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer;
|
import com.tejia.lijin.app.R;
|
import com.tejia.lijin.app.entity.SecondCategory;
|
import com.tejia.lijin.app.util.GlideCircleTransform;
|
import com.tejia.lijin.app.util.umengCustomEvent.CategoryCustomEvent;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* 二级分类
|
* Created by weikou2015 on 2017/2/23.
|
*/
|
|
public class SecondCategoryAdapter extends BaseAdapter {
|
private Context mContext;
|
|
private List<SecondCategory> mList;
|
|
private List<SecondCategory> bList;
|
|
private DisplayImageOptions options;
|
private String typename;//当前分类 名字
|
|
|
public SecondCategoryAdapter(Context context, List<SecondCategory> list, String typename) {
|
mContext = context;
|
bList = list;
|
this.typename = typename;
|
if (list.size() > 9) {
|
List<SecondCategory> cList = new ArrayList<>();
|
for (int i = 0; i < 9; i++) {
|
if (i < 9) {
|
cList.add(list.get(i));
|
} else {
|
break;
|
}
|
}
|
mList = cList;
|
SecondCategory info = new SecondCategory();
|
info.setId("more");
|
info.setPic(R.drawable.ic_category_more);
|
info.setName("更多");
|
mList.add(info);
|
} else {
|
mList = list;
|
//小于10个 并且不等于5个
|
if (mList.size() < 10 && mList.size() != 5) {
|
//添加 到10个数量 或者5个
|
int sum = 0;
|
if (mList.size() < 5) {
|
sum = 5 - mList.size();
|
} else {
|
sum = 10 - mList.size();
|
}
|
for (int i = 0; i < sum; i++) {
|
SecondCategory info = new SecondCategory();
|
info.setId("");
|
info.setPic(0);
|
info.setName("");
|
mList.add(info);
|
}
|
}
|
}
|
|
this.options = new DisplayImageOptions.Builder()
|
.showImageForEmptyUri(R.drawable.ic_category_default)
|
.showImageOnFail(R.drawable.ic_category_default)
|
.showImageOnLoading(R.drawable.ic_category_default)
|
.resetViewBeforeLoading(true).cacheInMemory(true)
|
.cacheOnDisk(true).imageScaleType(ImageScaleType.EXACTLY)
|
.considerExifParams(true)
|
.displayer(new FadeInBitmapDisplayer(300)).build();
|
}
|
|
@Override
|
public int getCount() {
|
return mList == null ? 0 : mList.size();
|
}
|
|
@Override
|
public Object getItem(int position) {
|
return mList.get(position);
|
}
|
|
@Override
|
public long getItemId(int position) {
|
return position;
|
}
|
|
|
@SuppressLint("ResourceType")
|
@Override
|
public View getView(final int position, View convertView, ViewGroup parent) {
|
Holder holder = null;
|
if (convertView == null) {
|
holder = new Holder();
|
convertView = LayoutInflater.from(mContext).inflate(R.layout.item_first_category, null);
|
holder.iv_category = convertView.findViewById(R.id.iv_category);
|
holder.tv_category_name = convertView.findViewById(R.id.tv_category_name);
|
convertView.setTag(holder);
|
} else {
|
holder = (Holder) convertView.getTag();
|
}
|
if (mList.get(position).getPicture() != null) {
|
Glide.with(mContext).load(mList.get(position).getPicture())
|
.placeholder(R.drawable.ic_goods_default) //设置等待时的图片
|
.transform(new GlideCircleTransform(mContext))
|
.into(holder.iv_category);
|
convertView.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
CategoryCustomEvent.classSecond(mContext);
|
Intent intent = new Intent(mContext, CategoryActivity.class);
|
intent.putExtra("catename", mList.get(position).getName());
|
intent.putExtra("cateId", mList.get(position).getId());
|
mContext.startActivity(intent);
|
}
|
});
|
} else {
|
if (mList.get(position).getPic() != 0) {
|
Glide.with(mContext).load(mList.get(position).getPic())
|
.into(holder.iv_category);
|
}
|
convertView.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
// mList = bList;
|
// notifyDataSetChanged();
|
if (mList.get(position).getPic() != 0) {
|
//跳转指定到分类
|
mContext.startActivity(new Intent(mContext, CategoryTypeActivity.class).putExtra("jumpcalss", typename));
|
}
|
}
|
});
|
}
|
holder.tv_category_name.setText(mList.get(position).getName());
|
return convertView;
|
}
|
|
class Holder {
|
ImageView iv_category;
|
TextView tv_category_name;
|
}
|
}
|