fix(character-detail): 더보기 버튼 미표시 문제 수정 (줄 수 측정 시점 조정)
세계관/성격 텍스트의 줄 수를 maxLines=3 적용 이전에 측정하도록 순서 변경. 측정 후 더보기 가시성 결정, 그 다음 접힘 레이아웃 적용. 확장 상태 플래그 및 아이콘/문구 초기화 추가.
This commit is contained in:
@@ -167,19 +167,30 @@ class CharacterDetailActivity : BaseActivity<ActivityCharacterDetailBinding>(
|
|||||||
// 세계관 내용과 버튼 가시성 초기화
|
// 세계관 내용과 버튼 가시성 초기화
|
||||||
val worldviewText = detail.backgrounds?.description.orEmpty()
|
val worldviewText = detail.backgrounds?.description.orEmpty()
|
||||||
binding.tvWorldviewContent.text = worldviewText
|
binding.tvWorldviewContent.text = worldviewText
|
||||||
applyWorldviewCollapsedLayout()
|
// 먼저 전체 줄 수를 측정한 뒤 접힘 레이아웃 적용
|
||||||
binding.tvWorldviewContent.post {
|
binding.tvWorldviewContent.post {
|
||||||
val needExpand = binding.tvWorldviewContent.lineCount > 3
|
val totalLines = binding.tvWorldviewContent.layout?.lineCount ?: binding.tvWorldviewContent.lineCount
|
||||||
|
val needExpand = totalLines > 3
|
||||||
binding.llWorldviewExpand.visibility = if (needExpand) View.VISIBLE else View.GONE
|
binding.llWorldviewExpand.visibility = if (needExpand) View.VISIBLE else View.GONE
|
||||||
|
// 표시 상태는 항상 접힘 상태로 시작
|
||||||
|
applyWorldviewCollapsedLayout()
|
||||||
|
isWorldviewExpanded = false
|
||||||
|
binding.tvWorldviewExpand.text = "더보기"
|
||||||
|
binding.ivWorldviewExpand.setImageResource(R.drawable.ic_chevron_down)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 성격 내용과 버튼 가시성 초기화
|
// 성격 내용과 버튼 가시성 초기화
|
||||||
val personalityText = detail.personalities?.description.orEmpty()
|
val personalityText = detail.personalities?.description.orEmpty()
|
||||||
binding.tvPersonalityContent.text = personalityText
|
binding.tvPersonalityContent.text = personalityText
|
||||||
applyPersonalityCollapsedLayout()
|
// 먼저 전체 줄 수를 측정한 뒤 접힘 레이아웃 적용
|
||||||
binding.tvPersonalityContent.post {
|
binding.tvPersonalityContent.post {
|
||||||
val needExpand = binding.tvPersonalityContent.lineCount > 3
|
val totalLines = binding.tvPersonalityContent.layout?.lineCount ?: binding.tvPersonalityContent.lineCount
|
||||||
|
val needExpand = totalLines > 3
|
||||||
binding.llPersonalityExpand.visibility = if (needExpand) View.VISIBLE else View.GONE
|
binding.llPersonalityExpand.visibility = if (needExpand) View.VISIBLE else View.GONE
|
||||||
|
applyPersonalityCollapsedLayout()
|
||||||
|
isPersonalityExpanded = false
|
||||||
|
binding.tvPersonalityExpand.text = "더보기"
|
||||||
|
binding.ivPersonalityExpand.setImageResource(R.drawable.ic_chevron_down)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 원작 섹션 표시/숨김
|
// 원작 섹션 표시/숨김
|
||||||
|
|||||||
Reference in New Issue
Block a user