diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt index f21fa5517a..49b731e3b0 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt @@ -26,6 +26,7 @@ import com.gh.gamecenter.adapter.viewholder.FooterViewHolder import com.gh.gamecenter.databinding.* import com.gh.gamecenter.entity.CommunityEntity import com.gh.gamecenter.entity.GameEntity +import com.gh.gamecenter.entity.LinkEntity import com.gh.gamecenter.eventbus.EBReuse import com.gh.gamecenter.game.horizontal.GameHorizontalAdapter import com.gh.gamecenter.gamedetail.GameDetailFragment @@ -648,25 +649,30 @@ class DescAdapter(context: Context, MtaHelper.onEvent("游戏详情_新", "自定义栏目正文_图片", "${gameName}-${customColumn.name}") titleHintTv.performClick() } + + val linkClosure: (LinkEntity) -> Unit = { + // 当配置的是不需要 id 也能跳转的时候直接跳转,否则都得根据是否有 ID 判断跳不跳 + if (it.type == "top_game_comment" + || it.type == "server" + || it.type == "feedback") { + it.name = gameName + it.text = mViewModel.game?.getGameCategory().toString() + DirectUtils.directToLinkPage(mContext, it, StringUtils.buildString(mEntrance, "游戏详情[", gameName, "]:自定义栏目"), "") + } else if (!it.link.isNullOrEmpty()) { + DirectUtils.directToLinkPage(mContext, it, StringUtils.buildString(mEntrance, "游戏详情[", gameName, "]:自定义栏目"), "") + } + } + titleHintTv.setOnClickListener { MtaHelper.onEvent("游戏详情_新", "自定义栏目标题后跳转", "${gameName}-${customColumn.name}-${customColumn.nameLink?.value}") - // 当配置的是不需要 id 也能跳转的时候直接跳转,否则都得根据是否有 ID 判断跳不跳 - if (customColumn.nameLink?.type == "top_game_comment" - || customColumn.nameLink?.type == "server" - || customColumn.nameLink?.type == "feedback") { - customColumn.nameLink?.name = gameName - customColumn.nameLink?.text = mViewModel.game?.getGameCategory().toString() - DirectUtils.directToLinkPage(mContext, customColumn.nameLink!!, StringUtils.buildString(mEntrance, "游戏详情[", gameName, "]:自定义栏目"), "") - } else if (!customColumn.nameLink?.link.isNullOrEmpty()) { - DirectUtils.directToLinkPage(mContext, customColumn.nameLink!!, StringUtils.buildString(mEntrance, "游戏详情[", gameName, "]:自定义栏目"), "") - } + linkClosure(customColumn.nameLink ?: LinkEntity()) } linkHintIv.setOnClickListener { linkHintTv.performClick() } linkHintArrowIv.setOnClickListener { linkHintTv.performClick() } linkHintTv.setOnClickListener { MtaHelper.onEvent("游戏详情_新", "自定义栏目右上角跳转", "${gameName}-${customColumn.name}-${customColumn.link?.value}") - DirectUtils.directToLinkPage(mContext, customColumn.link!!, StringUtils.buildString(mEntrance, "游戏详情[", gameName, "]:自定义栏目"), "") + linkClosure(customColumn.link ?: LinkEntity()) } }