From d8b2d537479543ca6721ac0c03b4e6b2ce49b770 Mon Sep 17 00:00:00 2001 From: klaus Date: Thu, 5 Mar 2026 15:41:21 +0900 Subject: [PATCH] =?UTF-8?q?fix(live-room):=20=EB=9D=BC=EC=9D=B4=EB=B8=8C?= =?UTF-8?q?=EB=A3=B8=20=ED=8C=94=EB=A1=9C=EC=9A=B0=20=EB=B2=84=ED=8A=BC=20?= =?UTF-8?q?=EB=A3=A9=EC=95=A4=ED=95=84=EC=9D=84=20=EC=A0=95=EB=A0=AC?= =?UTF-8?q?=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sodalive/live/room/LiveRoomActivity.kt | 24 +++++++++----- .../ic_live_creator_follow_alarm.png | Bin 0 -> 703 bytes .../ic_live_creator_follow_no_alarm.png | Bin 0 -> 3356 bytes .../ic_live_creator_follow_plus.png | Bin 0 -> 1361 bytes .../main/res/layout/activity_live_room.xml | 30 +++++++++++++++-- docs/20260305_라이브룸팔로우버튼룩앤필개선.md | 31 ++++++++++++++++++ 6 files changed, 73 insertions(+), 12 deletions(-) create mode 100644 app/src/main/res/drawable-xhdpi/ic_live_creator_follow_alarm.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_live_creator_follow_no_alarm.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_live_creator_follow_plus.png create mode 100644 docs/20260305_라이브룸팔로우버튼룩앤필개선.md diff --git a/app/src/main/java/kr/co/vividnext/sodalive/live/room/LiveRoomActivity.kt b/app/src/main/java/kr/co/vividnext/sodalive/live/room/LiveRoomActivity.kt index a75fd55d..0bedfa97 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/live/room/LiveRoomActivity.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/live/room/LiveRoomActivity.kt @@ -716,17 +716,23 @@ class LiveRoomActivity : BaseActivity(ActivityLiveRoomB isCreatorFollowNotifyEnabled = true } - binding.ivCreatorFollow.setImageResource( - if (response.isFollowing) { - if (isCreatorFollowNotifyEnabled) { - R.drawable.btn_following_big - } else { - R.drawable.btn_following_no_alarm_big - } + val followTextRes = if (response.isFollowing) { + R.string.screen_home_following + } else { + R.string.screen_home_follow + } + val followIconRes = if (response.isFollowing) { + if (isCreatorFollowNotifyEnabled) { + R.drawable.ic_live_creator_follow_alarm } else { - R.drawable.btn_follow_big + R.drawable.ic_live_creator_follow_no_alarm } - ) + } else { + R.drawable.ic_live_creator_follow_plus + } + + binding.tvCreatorFollow.text = getString(followTextRes) + binding.ivCreatorFollowIcon.setImageResource(followIconRes) binding.ivCreatorFollow.setOnClickListener { if (response.isFollowing) { diff --git a/app/src/main/res/drawable-xhdpi/ic_live_creator_follow_alarm.png b/app/src/main/res/drawable-xhdpi/ic_live_creator_follow_alarm.png new file mode 100644 index 0000000000000000000000000000000000000000..97ef001c44c67d784b600f395fc22ee9912ca982 GIT binary patch literal 703 zcmV;w0zmzVP)&W(U~}UZo10zzsr9klY|w;0Rul0;!p%q@uu*rlpZ!fxnfi=AnP4XQm&(iWPcd zbG(k0A+*5f*?c=;OzmX3z`x8Fqy6#wGkD@HaB}d&5I8PsOBrvzjo+Ta122I)X1);+ zewDQ|u=vkwPY=eU1sW2-g8;ly)h;F<;PN@V{?U++<}d=$OIN>u$V|-l5DlqqV)+?S z|JZ&G>x{FDneJ_G?V={N1ZLv?*v}A+pp(6LYgA{1+Qk0i1dim^*BPM}Na#)BB`%+b zW4Zm>{wjeJb2PMPXcH}ApCBY2FMb zY*szkg#u-OO&Md{1Cm%}DMTTK0t4zxDjDMb819&(!VOsxC?Pp___UNE+25zxeCf>J zN}61Wc-Isq`nPt_hE|O$0BvA*YjL*Vtx$ lrg?gBj{d1nMQg>Q;tEGrpaItw81n!C002ovPDHLkV1n=oJ`ex^ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_live_creator_follow_no_alarm.png b/app/src/main/res/drawable-xhdpi/ic_live_creator_follow_no_alarm.png new file mode 100644 index 0000000000000000000000000000000000000000..e2cc235eef2bf2258d1607e677a01fcceaf6643d GIT binary patch literal 3356 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/layout/activity_live_room.xml b/app/src/main/res/layout/activity_live_room.xml index bff2a110..05b3dd70 100644 --- a/app/src/main/res/layout/activity_live_room.xml +++ b/app/src/main/res/layout/activity_live_room.xml @@ -526,14 +526,38 @@ tools:text="999,999" /> - + tools:ignore="RelativeOverlap"> + + + + + `BUILD SUCCESSFUL` + - `./gradlew :app:ktlintCheck` -> `:app:ktlintMainSourceSetCheck FAILED` (기존 `LiveRoomActivity.kt` 다수 스타일 위반으로 실패, 이번 변경 라인 외 기존 누적 이슈) + - `lsp_diagnostics` -> `.kt`/`.xml` 확장자용 LSP 서버 미구성으로 실행 불가 + +### 2026-03-05 15:20 (KST) - 추가 요청 반영 +- 무엇/왜/어떻게: 팔로우 버튼을 하트/후원 캔 버튼과 동일한 표시 방식으로 맞추기 위해 `TextView` 단일 구조를 `LinearLayout(아이콘+텍스트)` 구조로 변경하고, 내부 아이콘 `iv_creator_follow_icon` 크기를 `14dp x 14dp`로 고정했다. +- 수정 파일: + - `app/src/main/res/layout/activity_live_room.xml` + - `app/src/main/java/kr/co/vividnext/sodalive/live/room/LiveRoomActivity.kt` +- 실행 명령 및 결과: + - `./gradlew :app:testDebugUnitTest :app:assembleDebug` -> `BUILD SUCCESSFUL` + - `lsp_diagnostics` -> `.kt`/`.xml` 확장자용 LSP 서버 미구성으로 실행 불가