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