fix(profile): 유저 프로필 라이브 카드에서 상세 페이지를 우선 노출한다
This commit is contained in:
@@ -66,6 +66,7 @@ import kr.co.vividnext.sodalive.extensions.moneyFormat
|
||||
import kr.co.vividnext.sodalive.live.LiveViewModel
|
||||
import kr.co.vividnext.sodalive.live.reservation.complete.LiveReservationCompleteActivity
|
||||
import kr.co.vividnext.sodalive.live.room.LiveRoomActivity
|
||||
import kr.co.vividnext.sodalive.live.room.detail.LiveRoomDetailFragment
|
||||
import kr.co.vividnext.sodalive.live.room.dialog.LivePaymentDialog
|
||||
import kr.co.vividnext.sodalive.live.room.dialog.LiveRoomPasswordDialog
|
||||
import kr.co.vividnext.sodalive.live.room.donation.LiveRoomDonationDialog
|
||||
@@ -252,8 +253,8 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
|
||||
private fun setupLiveView() {
|
||||
val recyclerView = binding.layoutUserProfileLive.rvLive
|
||||
liveAdapter = UserProfileLiveAdapter(
|
||||
onClickParticipant = { enterLiveRoom(roomId = it.roomId) },
|
||||
onClickReservation = { reservationRoom(roomId = it.roomId) }
|
||||
onClickParticipant = { showLiveRoomDetail(roomId = it.roomId) },
|
||||
onClickReservation = { showLiveRoomDetail(roomId = it.roomId) }
|
||||
)
|
||||
|
||||
recyclerView.layoutManager = LinearLayoutManager(
|
||||
@@ -286,6 +287,24 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
|
||||
recyclerView.adapter = liveAdapter
|
||||
}
|
||||
|
||||
private fun showLiveRoomDetail(roomId: Long) {
|
||||
val detailFragment = LiveRoomDetailFragment(
|
||||
roomId,
|
||||
onClickParticipant = { enterLiveRoom(roomId = roomId) },
|
||||
onClickReservation = { reservationRoom(roomId = roomId) },
|
||||
onClickModify = {},
|
||||
onClickStart = {},
|
||||
onClickCancel = {}
|
||||
)
|
||||
|
||||
if (detailFragment.isAdded) return
|
||||
|
||||
detailFragment.show(
|
||||
supportFragmentManager,
|
||||
detailFragment.tag
|
||||
)
|
||||
}
|
||||
|
||||
private fun setupDonationView() {
|
||||
binding.layoutUserProfileDonation.tvAll.setOnClickListener {
|
||||
val intent = Intent(applicationContext, UserProfileDonationAllViewActivity::class.java)
|
||||
|
||||
28
docs/20260306_유저프로필라이브상세페이지이동수정.md
Normal file
28
docs/20260306_유저프로필라이브상세페이지이동수정.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# 유저 프로필 라이브 섹션 아이템 터치 시 상세 페이지 진입으로 수정
|
||||
|
||||
- [x] 요구사항 및 영향 범위 확인 (`UserProfileActivity`, `UserProfileLiveAdapter`, 라이브 상세 진입 패턴)
|
||||
- [x] 라이브 카드 터치 동작을 즉시 참여/예약 처리 대신 라이브 상세 페이지(`LiveRoomDetailFragment`) 노출로 변경
|
||||
- [x] 변경 파일 정적 진단 및 관련 테스트/빌드 실행
|
||||
- [x] 검증 결과를 본 문서에 누적 기록
|
||||
|
||||
## 검증 기록
|
||||
|
||||
### 2026-03-06 17:00 (KST)
|
||||
- 무엇/왜/어떻게: 요청사항을 구현 단위로 분해하고, 기존 라이브 리스트 화면(`LiveNowAllActivity`, `LiveReservationAllActivity`)의 카드 터치 시 `LiveRoomDetailFragment`를 띄우는 패턴을 확인했다. 이를 `UserProfileActivity` 라이브 섹션에 동일 적용하기로 결정했다.
|
||||
- 실행 명령 및 결과:
|
||||
- `grep` 기반 코드 탐색으로 라이브 상세 진입/콜백 연결 지점 확인 완료
|
||||
- 구현/검증 명령은 변경 후 본 문서에 누적 기록 예정
|
||||
|
||||
### 2026-03-06 17:04 (KST)
|
||||
- 무엇/왜/어떻게: `UserProfileActivity.setupLiveView`의 `onClickParticipant`/`onClickReservation` 콜백을 직접 참여/예약 처리 대신 `showLiveRoomDetail(roomId)` 호출로 변경했다. `showLiveRoomDetail`에서 `LiveRoomDetailFragment`를 띄우고, 상세 내 액션 버튼만 기존 `enterLiveRoom`/`reservationRoom` 로직을 타도록 연결해 카드 터치 시 즉시 결제/참여가 발생하지 않게 조정했다.
|
||||
- 수정 파일:
|
||||
- `app/src/main/java/kr/co/vividnext/sodalive/explorer/profile/UserProfileActivity.kt`
|
||||
- `docs/20260306_유저프로필라이브상세페이지이동수정.md`
|
||||
- 실행 명령 및 결과:
|
||||
- `lsp_diagnostics` (`UserProfileActivity.kt`) -> `.kt` 확장자 LSP 서버 미구성으로 실행 불가
|
||||
- `./gradlew :app:testDebugUnitTest :app:assembleDebug` -> `BUILD SUCCESSFUL`
|
||||
|
||||
### 2026-03-06 17:06 (KST)
|
||||
- 무엇/왜/어떻게: 최종 완료 전 동일 검증 명령을 재실행해 변경사항이 빌드/테스트에 영향을 주지 않는지 재확인했다.
|
||||
- 실행 명령 및 결과:
|
||||
- `./gradlew :app:testDebugUnitTest :app:assembleDebug` -> `BUILD SUCCESSFUL` (UP-TO-DATE)
|
||||
Reference in New Issue
Block a user