package me.weyye.todaynews.ui.adapter; import android.widget.ImageView; import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseViewHolder; import java.util.List; import fm.jiecao.jcvideoplayer_lib.JCVideoPlayer; import fm.jiecao.jcvideoplayer_lib.JCVideoPlayerStandard; import me.weyye.todaynews.R; import me.weyye.todaynews.model.News; import me.weyye.todaynews.model.Video; import me.weyye.todaynews.theme.colorUi.util.ColorUiUtil; import me.weyye.todaynews.ui.view.EasyJCVideoPlayer; import me.weyye.todaynews.utils.ImageLoaderUtils; import me.weyye.todaynews.utils.VideoPathDecoder; /** * Created by Administrator on 2017/2/8 0008. */ public class VideoAdapter extends BaseQuickAdapter<News> { public VideoAdapter(List<News> data) { super(R.layout.item_video_list, data); } @Override protected void convert(BaseViewHolder baseViewHolder, final News news) { ColorUiUtil.changeTheme(baseViewHolder.convertView, mContext.getTheme()); final EasyJCVideoPlayer videoPlayer = baseViewHolder.getView(R.id.videoPlayer); ImageLoaderUtils.displayAvatar(news.media_avatar_url, (ImageView) baseViewHolder.getView(R.id.ivAvatar)); ImageLoaderUtils.displayImage(news.image_url, videoPlayer.thumbImageView); videoPlayer.thumbImageView.setScaleType(ImageView.ScaleType.CENTER_CROP); baseViewHolder // .setText(R.id.tvDuration, news.video_duration_str) .setText(R.id.tvFrom, news.source) .setText(R.id.tvCommentCount, news.comments_count + ""); videoPlayer.titleTextView.setText(news.title); videoPlayer.setDurationText(news.video_duration_str); if (news.video == null) { //由于地址加密,所以抽出一个类专门解析播放地址 VideoPathDecoder decoder = new VideoPathDecoder() { @Override public void onSuccess(Video s) { news.video = s; setPlayer(videoPlayer, news); } @Override public void onDecodeError(Throwable e) { } }; decoder.decodePath(news.source_url); } else { setPlayer(videoPlayer, news); } } private void setPlayer(JCVideoPlayerStandard videoPlayer, News news) { videoPlayer.setUp(news.video.main_url, JCVideoPlayer.SCREEN_LAYOUT_LIST, news.title); } }