From 577e864b6a8a4d34f742bc7dbde4040a53013ddb Mon Sep 17 00:00:00 2001 From: klaus Date: Tue, 22 Oct 2024 21:43:56 +0900 Subject: [PATCH] =?UTF-8?q?=EB=9D=BC=EC=9D=B4=EB=B8=8C=20=EB=B0=A9=20-=20?= =?UTF-8?q?=ED=95=98=ED=8A=B8=20=ED=9B=84=EC=9B=90=20=EC=95=A0=EB=8B=88?= =?UTF-8?q?=EB=A9=94=EC=9D=B4=EC=85=98=20-=20=EC=8A=A4=ED=94=BC=EC=BB=A4/?= =?UTF-8?q?=EB=A6=AC=EC=8A=A4=EB=84=88=20=EB=B3=80=EA=B2=BD=EC=8B=9C=20?= =?UTF-8?q?=ED=82=A4=EB=B3=B4=EB=93=9C=EB=A5=BC=20=EC=88=A8=EA=B8=B0?= =?UTF-8?q?=EA=B3=A0=20=ED=95=98=ED=8A=B8=20=ED=9B=84=EC=9B=90=20=EC=95=A0?= =?UTF-8?q?=EB=8B=88=EB=A9=94=EC=9D=B4=EC=85=98=20=EC=8B=9C=EC=9E=91=20?= =?UTF-8?q?=EC=9C=84=EC=B9=98=20=EC=9E=AC=EA=B3=84=EC=82=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sodalive/live/room/LiveRoomActivity.kt | 28 +++++++++++++++++-- 1 file changed, 25 insertions(+), 3 deletions(-) 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 64c06da..c279f3a 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 @@ -153,6 +153,7 @@ class LiveRoomActivity : BaseActivity(ActivityLiveRoomB private var isShowSignatureImage = false private var isAvailableLikeHeart = false + private var originalButtonPosition: IntArray? = null private val countDownTimer = object : CountDownTimer(remainingNoChattingTime * 1000, 1000) { override fun onTick(millisUntilFinished: Long) { @@ -531,19 +532,38 @@ class LiveRoomActivity : BaseActivity(ActivityLiveRoomB super.onDestroy() } + private fun setHeartButtonPosition() { + handler.postDelayed( + { + // 버튼의 위치 + val button = if (isHost) { + binding.flRouletteSettings + } else { + binding.flLikeHeart + } + originalButtonPosition = IntArray(2) + button.getLocationInWindow(originalButtonPosition) + }, + 500 + ) + } + private fun secondToMillis(second: Float): Long { return (second * 1000).toLong() } private fun addHeartAnimation() { - // 버튼의 위치 val button = if (isHost) { binding.flRouletteSettings } else { binding.flLikeHeart } - val buttonPosition = IntArray(2) - button.getLocationInWindow(buttonPosition) + var buttonPosition = originalButtonPosition + + if (buttonPosition == null) { + buttonPosition = IntArray(2) + button.getLocationInWindow(buttonPosition) + } // 하트 이미지뷰 생성 val heart = ImageView(this).apply { @@ -1349,6 +1369,7 @@ class LiveRoomActivity : BaseActivity(ActivityLiveRoomB binding.ivNotiMicrophoneMute.visibility = View.GONE speakerListAdapter.muteSpeakers.remove(SharedPreferenceManager.userId.toInt()) }, 100) + hideKeyboard { setHeartButtonPosition() } } private fun setBroadcaster() { @@ -1360,6 +1381,7 @@ class LiveRoomActivity : BaseActivity(ActivityLiveRoomB binding.flMicrophoneMute.visibility = View.VISIBLE binding.ivNotiMicrophoneMute.visibility = View.GONE }, 100) + hideKeyboard { setHeartButtonPosition() } } private fun changeListenerMessage(peerId: Long, isFromManager: Boolean = false) {