package com.mugua.mgvideo.ui.recommend;
|
|
import java.util.List;
|
|
import android.app.AlertDialog;
|
import android.app.AlertDialog.Builder;
|
import android.content.DialogInterface;
|
import android.content.Intent;
|
import android.os.Bundle;
|
import android.view.View;
|
import android.view.View.OnClickListener;
|
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.lcjian.library.widget.verticalviewpager.PagerAdapter;
|
import com.nostra13.universalimageloader.core.DisplayImageOptions;
|
import com.nostra13.universalimageloader.core.ImageLoader;
|
import com.nostra13.universalimageloader.core.assist.ImageScaleType;
|
import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer;
|
import com.mugua.mgvideo.entity.MySelfAd;
|
import com.mugua.mgvideo.service.DownLoadFileService;
|
import com.mugua.mgvideo.ui.mine.BrowserActivity;
|
|
import static com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions.withCrossFade;
|
|
public class RecommendAdAdapter extends PagerAdapter {
|
|
private ImageLoader imageLoader = ImageLoader.getInstance();
|
|
private DisplayImageOptions options;
|
|
private List<MySelfAd> mHomeAds;
|
|
public RecommendAdAdapter(List<MySelfAd> homeAds) {
|
super();
|
this.mHomeAds = homeAds;
|
this.options = new DisplayImageOptions.Builder()
|
.resetViewBeforeLoading(true).cacheInMemory(true)
|
.cacheOnDisk(true).imageScaleType(ImageScaleType.EXACTLY)
|
.considerExifParams(true)
|
.displayer(new FadeInBitmapDisplayer(300)).build();
|
}
|
|
@Override
|
public int getCount() {
|
return mHomeAds == null ? 0 : mHomeAds.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);
|
view.setOnClickListener(new OnClickListener() {
|
@Override
|
public void onClick(final View v) {
|
|
if (!StringUtils.isEmpty(mHomeAds.get(position).getUrl())
|
&& mHomeAds.get(position).getLinkType()
|
.equalsIgnoreCase("1")) {
|
Intent intent = new Intent(v.getContext(),
|
BrowserActivity.class);
|
intent.putExtra("url", mHomeAds.get(position).getUrl());
|
v.getContext().startActivity(intent);
|
} else if (!StringUtils
|
.isEmpty(mHomeAds.get(position).getUrl())
|
&& mHomeAds.get(position).getLinkType()
|
.equalsIgnoreCase("2")) {
|
AlertDialog.Builder builder = new Builder(v.getContext());
|
builder.setTitle("提示");
|
builder.setMessage("是否确认下载此应用?");
|
builder.setPositiveButton(
|
"确认",
|
new android.content.DialogInterface.OnClickListener() {
|
|
@Override
|
public void onClick(DialogInterface dialog,
|
int which) {
|
Bundle bundle = new Bundle();
|
bundle.putString("downloadurl", mHomeAds
|
.get(position).getUrl());
|
Intent intent = new Intent(v.getContext(),
|
DownLoadFileService.class);
|
intent.putExtras(bundle);
|
v.getContext().startService(intent);
|
}
|
});
|
builder.setNegativeButton(
|
"取消",
|
new android.content.DialogInterface.OnClickListener() {
|
|
@Override
|
public void onClick(DialogInterface dialog,
|
int which) {
|
dialog.dismiss();
|
}
|
});
|
builder.create().show();
|
}
|
|
}
|
});
|
// imageLoader.displayImage(mHomeAds.get(position).getPicture(), view,
|
// options);
|
Glide.with(view.getContext()).load(mHomeAds.get(position).getPicture())
|
.transition(withCrossFade()).into(view);
|
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 null;
|
}
|
}
|