From 545ce4665c1d506393908b55aafd681a45c774e6 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 02 四月 2021 19:14:22 +0800 Subject: [PATCH] 3.9.0bug优化 --- BuWanVideo/src/com/weikou/beibeivideo/util/video/VideoUIUtil.java | 57 +++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 43 insertions(+), 14 deletions(-) diff --git a/BuWanVideo/src/com/weikou/beibeivideo/util/video/VideoUIUtil.java b/BuWanVideo/src/com/weikou/beibeivideo/util/video/VideoUIUtil.java index e3dc26b..0d05b64 100644 --- a/BuWanVideo/src/com/weikou/beibeivideo/util/video/VideoUIUtil.java +++ b/BuWanVideo/src/com/weikou/beibeivideo/util/video/VideoUIUtil.java @@ -2,15 +2,28 @@ import android.content.Context; import android.graphics.Typeface; +import android.graphics.drawable.Drawable; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; import android.text.SpannableString; import android.text.Spanned; import android.text.style.AbsoluteSizeSpan; import android.text.style.StyleSpan; +import android.util.Log; import android.view.View; +import android.view.ViewGroup; +import android.widget.LinearLayout; import com.bumptech.glide.Glide; +import com.bumptech.glide.load.DataSource; +import com.bumptech.glide.load.engine.DiskCacheStrategy; +import com.bumptech.glide.load.engine.GlideException; import com.bumptech.glide.load.resource.bitmap.CenterCrop; +import com.bumptech.glide.request.RequestListener; import com.bumptech.glide.request.RequestOptions; +import com.bumptech.glide.request.target.SimpleTarget; +import com.bumptech.glide.request.target.Target; +import com.bumptech.glide.request.transition.Transition; import com.lcjian.library.util.common.DimenUtils; import com.lcjian.library.util.common.StringUtils; import com.lcjian.library.util.glide.GlideRoundTransform; @@ -25,16 +38,19 @@ public class VideoUIUtil { + private static final String TAG = "VideoUIUtil"; - public static void setVideoListItem(Context mContext, VideoHolder viewHolder, View.OnClickListener itemOnClickListener, final VideoInfo info, int columns) { + public static void setVideoListItem(Context mContext, VideoHolder viewHolder, View.OnClickListener itemOnClickListener, final VideoInfo info, int columns, int itemWidth) { viewHolder.ll_video_show.setVisibility(View.VISIBLE); + float ratio = 0; if (columns == 2) { - viewHolder.rl_ratio.setRatio(0.562f); + ratio = 0.562f; } else if (columns == 3) { - viewHolder.rl_ratio.setRatio(1.39f); + ratio = 1.39f; } else { - viewHolder.rl_ratio.setRatio(0.562f); + ratio = 0.562f; } + viewHolder.rl_ratio.setRatio(ratio); String picture = ""; if (columns == 2) { @@ -48,16 +64,29 @@ } viewHolder.rl_ratio.setTag(picture); - viewHolder.rl_ratio.post(new Runnable() { - @Override - public void run() { - try { - Glide.with(mContext).load(viewHolder.rl_ratio.getTag() + "").apply(new RequestOptions().centerCrop()).transform(new GlideRoundTransform(mContext, 6)).transition(withCrossFade()).placeholder(R.drawable.shape_video_list_cover_placeholder).into(viewHolder.iv_movie_cover); - } catch (IllegalArgumentException e) { - e.printStackTrace(); - } + if (itemWidth > 0) { + ViewGroup.LayoutParams params = viewHolder.iv_movie_cover.getLayoutParams(); + ViewGroup.LayoutParams params1 = viewHolder.view.getLayoutParams(); + params.width = itemWidth; + params.height = (int) (itemWidth * ratio); + params1.width = itemWidth; + try { + Glide.with(mContext).load(picture).apply(new RequestOptions().centerCrop()).transform(new GlideRoundTransform(mContext, 6)).transition(withCrossFade()).placeholder(R.drawable.shape_video_list_cover_placeholder).diskCacheStrategy(DiskCacheStrategy.ALL).into(viewHolder.iv_movie_cover); + } catch (IllegalArgumentException e) { + Log.i(TAG, e.getMessage()); } - }); + } else { + viewHolder.rl_ratio.post(new Runnable() { + @Override + public void run() { + try { + Glide.with(mContext).load(viewHolder.rl_ratio.getTag() + "").apply(new RequestOptions().centerCrop()).transform(new GlideRoundTransform(mContext, 6)).transition(withCrossFade()).placeholder(R.drawable.shape_video_list_cover_placeholder).diskCacheStrategy(DiskCacheStrategy.ALL).into(viewHolder.iv_movie_cover); + } catch (IllegalArgumentException e) { + e.printStackTrace(); + } + } + }); + } if (info.getTag() != null && info.getTag().contains("璇勫垎")) { info.setTag(""); @@ -108,7 +137,7 @@ viewHolder.iv_high.setVisibility(View.GONE); } - viewHolder.tv_movie_sub_title.setText(info.getSubTitle()==null?"":info.getSubTitle()); + viewHolder.tv_movie_sub_title.setText(info.getSubTitle() == null ? "" : info.getSubTitle()); } public static void setHomeVideoListItem(Context mContext, VideoHolder holder, View.OnClickListener itemOnClickListener, HomeVideo info, boolean big) { -- Gitblit v1.8.0