package com.haicaojie.android.ui.recommend;
|
|
import android.content.Context;
|
import android.content.Intent;
|
import android.support.v4.view.PagerAdapter;
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.view.ViewGroup.LayoutParams;
|
import android.widget.ImageView;
|
import android.widget.ImageView.ScaleType;
|
|
import com.bumptech.glide.Glide;
|
import com.lcjian.library.util.common.StringUtils;
|
import com.haicaojie.android.R;
|
import com.haicaojie.android.entity.HomeBanner;
|
import com.haicaojie.android.ui.BrowserActivity;
|
|
import java.util.Iterator;
|
import java.util.List;
|
|
public class RecommendTopAdapter extends PagerAdapter {
|
|
private List<HomeBanner> mList;
|
|
private Context mContext;
|
|
public RecommendTopAdapter(List<HomeBanner> list, Context context) {
|
super();
|
this.mList = list;
|
this.mContext = context;
|
}
|
|
@Override
|
public int getCount() {
|
return mList == null ? 0 : mList.size();
|
}
|
|
@Override
|
public Object instantiateItem(ViewGroup container, final int position) {
|
ImageView view = new ImageView(container.getContext());
|
view.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
|
LayoutParams.MATCH_PARENT));
|
view.setScaleType(ScaleType.FIT_XY);
|
Glide.with(mContext).load(mList.get(position).getPicture()).placeholder(R.drawable.ic_default_recommend_top).into(view);
|
// ImageLoader.getInstance().displayImage(mList.get(position).getPicture(), view, options);
|
view.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
Intent intent = null;
|
if ((!StringUtils.isEmpty(mList.get(position).getJumpDetail().getActivity()))
|
&& mList.get(position).getParams() != null) {
|
try {
|
intent = new Intent(mContext, Class.forName(mList.get(position).getJumpDetail().getActivity()));
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
@SuppressWarnings("unchecked")
|
Iterator<String> its = mList.get(position).getParams().keys();
|
while (its.hasNext()) {
|
String key = its.next();
|
String value = mList.get(position).getParams().optString(key);
|
intent.putExtra(key, value);
|
}
|
mContext.startActivity(intent);
|
} else if (StringUtils.isEmpty(mList.get(position).getJumpDetail().getActivity())
|
&& mList.get(position).getParams() != null) {
|
intent = new Intent(mContext, BrowserActivity.class);
|
|
@SuppressWarnings("unchecked")
|
Iterator<String> its = mList.get(position).getParams().keys();
|
while (its.hasNext()) {
|
String key = its.next();
|
String value = mList.get(position).getParams().optString(key);
|
intent.putExtra(key, value);
|
}
|
mContext.startActivity(intent);
|
}
|
}
|
});
|
|
|
container.addView(view);
|
return view;
|
}
|
|
@Override
|
public void destroyItem(ViewGroup container, int position, Object object) {
|
container.removeView((View) object);
|
}
|
|
@Override
|
public boolean isViewFromObject(View view, Object object) {
|
return view == object;
|
}
|
|
@Override
|
public CharSequence getPageTitle(int position) {
|
return mList.get(position) + "";
|
}
|
}
|