diff --git a/app/src/main/java/kr/co/vividnext/sodalive/v2/widget/contentranking/ContentRankingHorizontalCardView.kt b/app/src/main/java/kr/co/vividnext/sodalive/v2/widget/contentranking/ContentRankingHorizontalCardView.kt index a900761a..2f42afe9 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/v2/widget/contentranking/ContentRankingHorizontalCardView.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/v2/widget/contentranking/ContentRankingHorizontalCardView.kt @@ -116,17 +116,12 @@ class ContentRankingHorizontalCardView @JvmOverloads constructor( private fun positionViews(size: ContentRankingCardSize) { val scale = size.widthPx / 374f requireNotNull(rankGroup).layoutParams = LayoutParams( - (49 * scale).roundToInt(), + ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT ).apply { leftMargin = (14 * scale).roundToInt() topMargin = (14 * scale).roundToInt() } - requireNotNull(rankText).layoutParams = android.widget.LinearLayout.LayoutParams( - (48 * scale).roundToInt(), - (52 * scale).roundToInt() - ) - requireNotNull(rankText).setPadding(0, 0, 0, (4 * scale).roundToInt()) requireNotNull(rankText).applyContentRankingRankGradient() imageView().layoutParams = LayoutParams((80 * scale).roundToInt(), (80 * scale).roundToInt()).apply { leftMargin = (77 * scale).roundToInt() diff --git a/app/src/main/res/layout/view_content_ranking_horizontal_card.xml b/app/src/main/res/layout/view_content_ranking_horizontal_card.xml index ed373487..b38d2ead 100644 --- a/app/src/main/res/layout/view_content_ranking_horizontal_card.xml +++ b/app/src/main/res/layout/view_content_ranking_horizontal_card.xml @@ -6,7 +6,7 @@ diff --git a/app/src/test/java/kr/co/vividnext/sodalive/v2/widget/contentranking/ContentRankingCardViewTest.kt b/app/src/test/java/kr/co/vividnext/sodalive/v2/widget/contentranking/ContentRankingCardViewTest.kt index 56510966..5c42337c 100644 --- a/app/src/test/java/kr/co/vividnext/sodalive/v2/widget/contentranking/ContentRankingCardViewTest.kt +++ b/app/src/test/java/kr/co/vividnext/sodalive/v2/widget/contentranking/ContentRankingCardViewTest.kt @@ -75,22 +75,18 @@ class ContentRankingCardViewTest { val view = inflateView(R.layout.view_content_ranking_horizontal_card) view.setCardSize(ContentRankingCardSize(widthPx = 374, heightPx = 100)) + view.bind(sampleItem(rank = 20)) val rankGroup = view.findViewById(R.id.ll_content_ranking_rank_group) val rankGroupParams = rankGroup.layoutParams as ViewGroup.MarginLayoutParams - assertEquals(49, rankGroupParams.width) + assertEquals(ViewGroup.LayoutParams.WRAP_CONTENT, rankGroupParams.width) assertEquals(ViewGroup.LayoutParams.WRAP_CONTENT, rankGroupParams.height) assertEquals(14, rankGroupParams.leftMargin) assertEquals(14, rankGroupParams.topMargin) - assertRankTextBox( - view = view.findViewById(R.id.tv_content_ranking_rank), - expectedWidth = 48, - expectedHeight = 52, - expectedLeft = 0, - expectedTop = 0, - expectedBottomPadding = 4 - ) + val rankText = view.findViewById(R.id.tv_content_ranking_rank) + assertEquals("20", rankText.text.toString()) + assertRankTextWrapContent(rankText) } @Test @@ -188,6 +184,14 @@ class ContentRankingCardViewTest { assertEquals(expectedBottomPadding, view.paddingBottom) } + private fun assertRankTextWrapContent(view: TextView) { + val params = view.layoutParams as ViewGroup.MarginLayoutParams + assertEquals(ViewGroup.LayoutParams.WRAP_CONTENT, params.width) + assertEquals(ViewGroup.LayoutParams.WRAP_CONTENT, params.height) + assertEquals(Gravity.CENTER, view.gravity) + assertEquals(false, view.includeFontPadding) + } + private fun sampleItem( rank: Int = 1, showRankChange: Boolean = true