package cn.flightfeather.thirdapp.adapter;
|
|
import android.app.Activity;
|
import android.os.Environment;
|
import android.support.v7.widget.RecyclerView;
|
import android.util.Log;
|
import android.view.LayoutInflater;
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.widget.ImageView;
|
|
import com.bumptech.glide.Glide;
|
|
import java.io.File;
|
import java.util.List;
|
|
import cn.flightfeather.thirdapp.R;
|
import cn.flightfeather.thirdapp.bean.Mediafile;
|
import cn.flightfeather.thirdapp.task.DownloadAndSetImageTask;
|
|
/**
|
* Created by note_ff_1602 on 2018/1/30.
|
*/
|
|
public class PhotoListAdapter extends RecyclerView.Adapter<PhotoListAdapter.PhotoListHolder> {
|
private List<Mediafile> mediafileList;
|
private Activity activity;
|
private LayoutInflater layoutInflater;
|
|
public PhotoListAdapter(List<Mediafile> mediafileList, Activity activity) {
|
this.mediafileList = mediafileList;
|
this.activity = activity;
|
layoutInflater = LayoutInflater.from(activity);
|
}
|
|
@Override
|
public PhotoListHolder onCreateViewHolder(ViewGroup parent, int viewType) {
|
View view = layoutInflater.inflate(R.layout.item_square_photo, parent, false);
|
return new PhotoListHolder(view);
|
}
|
|
@Override
|
public void onBindViewHolder(PhotoListHolder holder, int position) {
|
Mediafile mediafile = mediafileList.get(position);
|
|
if (mediafile.getGuid() == null) {
|
Glide.with(activity)
|
.load(R.drawable.icon_add_photo)
|
.into(holder.iv_photo);
|
} else {
|
// String url = CommonApplication.getInstance().ROOT_URL_RELEASE_IMAGE + mediafile.getExtension1() + mediafile.getGuid() + ".jpg";
|
// Glide.with(context).asDrawable().load(url).override(100,100).skipMemoryCache(true).diskCacheStrategy(DiskCacheStrategy.ALL).into(holder.iv_photo);
|
|
File file = new File(Environment.getExternalStorageDirectory(), mediafile.getPath() + mediafile.getDescription());
|
if (file.exists()) {
|
// SetImageTask task = new SetImageTask(file,holder.iv_photo);
|
// task.execute();
|
// String url = CommonApplication.getInstance().ROOT_URL_RELEASE_IMAGE + mediafile.getExtension1() + mediafile.getGuid() + ".jpg";
|
Glide.with(activity)
|
.load(file)
|
.placeholder(R.drawable.icon_add_photo_waite)
|
.override(100, 100)
|
.into(holder.iv_photo);
|
} else {
|
DownloadAndSetImageTask task = new DownloadAndSetImageTask(mediafile, holder.iv_photo, activity);
|
task.execute();
|
Log.e("photolist", position + " no image found");
|
}
|
}
|
}
|
|
@Override
|
public int getItemCount() {
|
return mediafileList.size();
|
}
|
|
public class PhotoListHolder extends RecyclerView.ViewHolder {
|
ImageView iv_photo;
|
|
public PhotoListHolder(View itemView) {
|
super(itemView);
|
iv_photo = (ImageView) itemView.findViewById(R.id.iv_photo);
|
}
|
}
|
}
|