package com.amlogic.tzr.charismatic_yichang.adapter;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.DecelerateInterpolator;
import android.widget.TextView;
import com.amlogic.tzr.charismatic_yichang.ApplicationController;
import com.amlogic.tzr.charismatic_yichang.R;
import com.amlogic.tzr.charismatic_yichang.Tool.BitmapCache;
import com.amlogic.tzr.charismatic_yichang.Tool.ScreenUtil;
import com.amlogic.tzr.charismatic_yichang.bean.VideoListBean;
import com.amlogic.tzr.charismatic_yichang.view.ShowMaxImageView;
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.ImageLoader;
import java.util.List;
import cn.bmob.v3.datatype.BmobFile;
/**
* Created by Administrator on 2015/7/4.
*/
public class VideoAdapter extends RecyclerView.Adapter {
private static final int ANIMATED_ITEMS_COUNT = 2;
private Context mContext;
private int lastAnimatedPosition = -1;
private List<VideoListBean> list;
private RequestQueue mQueue;
private ImageLoader mImageLoader;
private OnItemClickLitener mOnItemClickLitener;
public void setOnItemClickLitener(OnItemClickLitener mOnItemClickLitener)
{
this.mOnItemClickLitener = mOnItemClickLitener;
}
public VideoAdapter(Context mContext, List<VideoListBean> list) {
this.mContext = mContext;
this.list = list;
mQueue = ApplicationController.getInstance().getRequestQueue();
mImageLoader = new ImageLoader(mQueue, new BitmapCache());
}
private void runEnterAnimation(View view,int position){
// if (position >=ANIMATED_ITEMS_COUNT-1){
// return;
// }
if (position>lastAnimatedPosition){
lastAnimatedPosition=position;
view.setTranslationY(ScreenUtil.getScreenHeight(mContext));
view.animate()
.translationY(0)
.setInterpolator(new DecelerateInterpolator(3.0f))
.setDuration(800)
.start();
}
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
final View view= LayoutInflater.from(mContext).inflate(R.layout.item_video_list,parent,false);
return new CellVideoHoder(view);
}
@Override
public void onBindViewHolder(final RecyclerView.ViewHolder holder, int position) {
CellVideoHoder videoHoder= (CellVideoHoder) holder;
if (list.size()>0){
VideoListBean bean=list.get(position);
// Log.e("VideoAdapter", "------ >>>++++ bean.getVideo_title()="+bean.getVideo_title());
videoHoder.titleView.setText(bean.getVideo_title());
videoHoder.mImageView.setImageResource(R.mipmap.ic_class_icon);
if (bean.getVideo_thumb()!=null){
BmobFile icon=bean.getVideo_thumb();
String url=icon.getFileUrl(mContext);
ImageLoader.ImageListener imageListener = ImageLoader.getImageListener(videoHoder.mImageView, R.mipmap.pic_default, R.mipmap.pic_default);
mImageLoader.get(url, imageListener);
}
videoHoder.clockView.setText(bean.getVideo_time());
videoHoder.dateView.setText(bean.getVideo_date());
}
runEnterAnimation(holder.itemView,position);
if (mOnItemClickLitener!=null){
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int pos=holder.getLayoutPosition();
mOnItemClickLitener.onItemClick(holder.itemView, pos);
}
});
}
}
@Override
public int getItemCount() {
return list.size();
}
public static class CellVideoHoder extends RecyclerView.ViewHolder{
ShowMaxImageView mImageView;
TextView titleView,clockView,dateView;
public CellVideoHoder(View itemView) {
super(itemView);
mImageView= (ShowMaxImageView) itemView.findViewById(R.id.iv_vp_video);
titleView= (TextView) itemView.findViewById(R.id.tv_vp_title);
clockView= (TextView) itemView.findViewById(R.id.tv_vp_clock);
dateView= (TextView) itemView.findViewById(R.id.tv_vp_date);
}
}
}