diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescViewModel.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescViewModel.kt index cfd1a9d68e..83e67cff6e 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescViewModel.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescViewModel.kt @@ -263,11 +263,13 @@ class DescViewModel(application: Application, if (item.type == DetailEntity.Type.CUSTOM_COLUMN.value) { item.customColumn?.infoTag?.let { for (tag in it) { - Picasso.with(getApplication()).load(tag.icon).into(object : Target { - override fun onPrepareLoad(placeHolderDrawable: Drawable?) {} - override fun onBitmapFailed(errorDrawable: Drawable?) {} - override fun onBitmapLoaded(bitmap: Bitmap?, from: Picasso.LoadedFrom?) {} - }) + tryWithDefaultCatch { + Picasso.with(getApplication()).load(tag.icon).into(object : Target { + override fun onPrepareLoad(placeHolderDrawable: Drawable?) {} + override fun onBitmapFailed(errorDrawable: Drawable?) {} + override fun onBitmapLoaded(bitmap: Bitmap?, from: Picasso.LoadedFrom?) {} + }) + } } } } diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/GameDetailCustomColumnAdapter.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/GameDetailCustomColumnAdapter.kt index 8f1bcf527f..b94a6f1bf9 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/GameDetailCustomColumnAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/GameDetailCustomColumnAdapter.kt @@ -12,6 +12,7 @@ import androidx.recyclerview.widget.RecyclerView import butterknife.BindView import com.gh.base.BaseRecyclerViewHolder import com.gh.common.util.SpanBuilder +import com.gh.common.util.tryWithDefaultCatch import com.gh.common.view.CenterImageSpan import com.gh.common.view.CustomLinkMovementMethod import com.gh.gamecenter.R @@ -51,22 +52,24 @@ class GameDetailCustomColumnAdapter(context: Context) color ?: "#000000") .build() - Picasso.with(mContext).load(icon) - .priority(Picasso.Priority.HIGH) - .into(object : Target { - override fun onPrepareLoad(placeHolderDrawable: Drawable?) { - viewHolder.contentTv.movementMethod = CustomLinkMovementMethod.getInstance() - viewHolder.contentTv.text = spannable - } - override fun onBitmapFailed(errorDrawable: Drawable?) {} - override fun onBitmapLoaded(bitmap: Bitmap?, from: Picasso.LoadedFrom?) { - val bitmapDrawable = BitmapDrawable(mContext.resources, bitmap) - bitmapDrawable.setBounds(0, 0, DensityUtil.dip2px(12F), DensityUtil.dip2px(12F)) - spannable.setSpan(CenterImageSpan(bitmapDrawable), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) - viewHolder.contentTv.movementMethod = CustomLinkMovementMethod.getInstance() - viewHolder.contentTv.text = spannable - } - }) + tryWithDefaultCatch { + Picasso.with(mContext).load(icon) + .priority(Picasso.Priority.HIGH) + .into(object : Target { + override fun onPrepareLoad(placeHolderDrawable: Drawable?) { + viewHolder.contentTv.movementMethod = CustomLinkMovementMethod.getInstance() + viewHolder.contentTv.text = spannable + } + override fun onBitmapFailed(errorDrawable: Drawable?) {} + override fun onBitmapLoaded(bitmap: Bitmap?, from: Picasso.LoadedFrom?) { + val bitmapDrawable = BitmapDrawable(mContext.resources, bitmap) + bitmapDrawable.setBounds(0, 0, DensityUtil.dip2px(12F), DensityUtil.dip2px(12F)) + spannable.setSpan(CenterImageSpan(bitmapDrawable), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) + viewHolder.contentTv.movementMethod = CustomLinkMovementMethod.getInstance() + viewHolder.contentTv.text = spannable + } + }) + } } }