package com.dl7.mvp.adapter;
import android.content.Context;
import android.view.View;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.ImageView;
import com.dl7.mvp.R;
import com.dl7.mvp.local.table.VideoInfo;
import com.dl7.mvp.module.video.fullscreen.VideoFullscreenActivity;
import com.dl7.mvp.module.video.player.VideoPlayerActivity;
import com.dl7.mvp.rxbus.RxBus;
import com.dl7.mvp.utils.DefIconFactory;
import com.dl7.mvp.utils.ImageLoader;
import com.dl7.mvp.utils.StringUtils;
import com.dl7.recycler.adapter.BaseViewHolder;
/**
* Created by long on 2016/12/16.
* video 缓存完成适配器
*/
public class VideoCompleteAdapter extends BaseVideoDLAdapter {
public VideoCompleteAdapter(Context context, RxBus rxBus) {
super(context, rxBus);
}
@Override
protected int attachLayoutRes() {
return R.layout.adapter_video_complete;
}
@Override
protected void convert(final BaseViewHolder holder, final VideoInfo item) {
ImageView ivThumb = holder.getView(R.id.iv_thumb);
ImageLoader.loadFitCenter(mContext, item.getCover(), ivThumb, DefIconFactory.provideIcon());
holder.setText(R.id.tv_size, StringUtils.convertStorageNoB(item.getTotalSize()))
.setText(R.id.tv_title, item.getTitle());
// 根据是否为编辑模式来进行处理
final CheckBox cbDelete = holder.getView(R.id.cb_delete);
if (mIsEditMode) {
cbDelete.setVisibility(View.VISIBLE);
cbDelete.setChecked(mSparseItemChecked.get(holder.getAdapterPosition()));
} else {
cbDelete.setVisibility(View.GONE);
cbDelete.setChecked(false);
}
cbDelete.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
_handleCheckedChanged(holder.getAdapterPosition(), isChecked);
}
});
holder.getView(R.id.tv_show_detail).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mIsEditMode) {
cbDelete.setChecked(!cbDelete.isChecked());
} else {
VideoPlayerActivity.launch(mContext, item);
}
}
});
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mIsEditMode) {
cbDelete.setChecked(!cbDelete.isChecked());
} else {
VideoFullscreenActivity.launch(mContext, item);
}
}
});
}
}