diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailBriefItemViewHolder.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailBriefItemViewHolder.kt index 2ebfa0b7de..df9de3ce31 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailBriefItemViewHolder.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailBriefItemViewHolder.kt @@ -46,7 +46,7 @@ class GameDetailBriefItemViewHolder( highlightedTextClickListener = TextHelper.CopyToClipboardHighlightedTextClick() ) briefTv.post { - expandTv.isVisible = briefTv.lineCount == 3 && briefTv.layout.getEllipsisCount(2) > 0 + expandTv.isVisible = briefTv.lineCount == 3 && (briefTv.layout?.getEllipsisCount(2) ?: 0) > 0 } expandTv.setOnClickListener { SensorsBridge.trackGameDetailModuleClick( diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailComprehensivePanelItemViewHolder.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailComprehensivePanelItemViewHolder.kt index 5de1a6c4e6..0e317a24b9 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailComprehensivePanelItemViewHolder.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailComprehensivePanelItemViewHolder.kt @@ -194,6 +194,8 @@ class GameDetailComprehensivePanelItemViewHolder( maxLines = if (parentViewHolder.showPart && !parentViewHolder.isExpand) 1 else Int.MAX_VALUE text = data.text post { + if (layout == null) return@post + val hasEllipsize = layout.getEllipsisCount(0) > 0 if (parentViewHolder.showPart && hasEllipsize && !parentViewHolder.binding.expandTv.isVisible) { parentViewHolder.binding.expandTv.isVisible = true diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailDeveloperWordItemViewHolder.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailDeveloperWordItemViewHolder.kt index d2e7f3d719..1359a90fce 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailDeveloperWordItemViewHolder.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailDeveloperWordItemViewHolder.kt @@ -27,7 +27,7 @@ class GameDetailDeveloperWordItemViewHolder( .fromHtmlCompat(PicassoImageGetter(contentTv), ExtraTagHandler()) ) contentTv.post { - expandTv.isVisible = (contentTv.lineCount == 3 && contentTv.layout.getEllipsisCount(2) > 0) || contentTv.lineCount > 3 + expandTv.isVisible = (contentTv.lineCount == 3 && (contentTv.layout?.getEllipsisCount(2) ?: 0) > 0) || contentTv.lineCount > 3 } expandTv.background = R.drawable.bg_ui_surface_expand_gradient.toDrawable(context) expandTv.setTextColor(com.gh.gamecenter.common.R.color.text_theme.toColor(context)) diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailUpdateItemViewHolder.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailUpdateItemViewHolder.kt index 687e31b0d4..3296a0cbde 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailUpdateItemViewHolder.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/detail/viewholder/GameDetailUpdateItemViewHolder.kt @@ -36,7 +36,7 @@ class GameDetailUpdateItemViewHolder( } contentTv.text = entity.updateDes contentTv.post { - expandTv.isVisible = contentTv.lineCount == 3 && contentTv.layout.getEllipsisCount(2) > 0 + expandTv.isVisible = contentTv.lineCount == 3 && (contentTv.layout?.getEllipsisCount(2) ?: 0) > 0 } expandTv.background = R.drawable.bg_ui_surface_expand_gradient.toDrawable(context) expandTv.setTextColor(com.gh.gamecenter.common.R.color.text_theme.toColor(context)) diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/history/HistoryApkListAdapter.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/history/HistoryApkListAdapter.kt index f67ba7d92d..32a5f3ce16 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/history/HistoryApkListAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/history/HistoryApkListAdapter.kt @@ -63,7 +63,7 @@ class HistoryApkListAdapter( holder.binding.expandTv.setTextColor(com.gh.gamecenter.common.R.color.text_theme.toColor(mContext)) holder.binding.updateDescTv.text = apkEntity.updateDesc holder.binding.updateDescTv.post { - holder.binding.expandTv.isVisible = holder.binding.updateDescTv.lineCount == 3 && holder.binding.updateDescTv.layout.getEllipsisCount(2) > 0 + holder.binding.expandTv.isVisible = holder.binding.updateDescTv.lineCount == 3 && (holder.binding.updateDescTv.layout?.getEllipsisCount(2) ?: 0) > 0 } holder.binding.versionTv.text = "版本${apkEntity.version}" holder.binding.releaseDateTv.text = TimeUtils.getFormatTime(apkEntity.updateTime)