From e8bd31454ee7881cc1f81f9699e8e243c9b41bb1 Mon Sep 17 00:00:00 2001 From: klaus Date: Tue, 16 Jun 2026 17:27:08 +0900 Subject: [PATCH] =?UTF-8?q?feat(creator):=20=EC=B1=84=EB=84=90=20=EB=8D=94?= =?UTF-8?q?=EB=B3=B4=EA=B8=B0=20=EB=A9=94=EB=89=B4=EB=A5=BC=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../channel/CreatorChannelMoreBottomSheet.kt | 54 +++++++++++++++++++ .../layout/dialog_creator_channel_more.xml | 48 +++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 app/src/main/java/kr/co/vividnext/sodalive/v2/creator/channel/CreatorChannelMoreBottomSheet.kt create mode 100644 app/src/main/res/layout/dialog_creator_channel_more.xml diff --git a/app/src/main/java/kr/co/vividnext/sodalive/v2/creator/channel/CreatorChannelMoreBottomSheet.kt b/app/src/main/java/kr/co/vividnext/sodalive/v2/creator/channel/CreatorChannelMoreBottomSheet.kt new file mode 100644 index 00000000..77bb023d --- /dev/null +++ b/app/src/main/java/kr/co/vividnext/sodalive/v2/creator/channel/CreatorChannelMoreBottomSheet.kt @@ -0,0 +1,54 @@ +package kr.co.vividnext.sodalive.v2.creator.channel + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import kr.co.vividnext.sodalive.databinding.DialogCreatorChannelMoreBinding + +class CreatorChannelMoreBottomSheet : BottomSheetDialogFragment() { + + var onClickBlock: (() -> Unit)? = null + var onClickUserReport: (() -> Unit)? = null + var onClickProfileReport: (() -> Unit)? = null + + private var binding: DialogCreatorChannelMoreBinding? = null + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View { + val viewBinding = DialogCreatorChannelMoreBinding.inflate(inflater, container, false) + binding = viewBinding + return viewBinding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + val viewBinding = binding ?: return + + viewBinding.tvUserBlock.setOnClickListener { + dismiss() + onClickBlock?.invoke() + } + viewBinding.tvUserReport.setOnClickListener { + dismiss() + onClickUserReport?.invoke() + } + viewBinding.tvProfileReport.setOnClickListener { + dismiss() + onClickProfileReport?.invoke() + } + } + + override fun onDestroyView() { + binding = null + super.onDestroyView() + } + + companion object { + fun newInstance(): CreatorChannelMoreBottomSheet = CreatorChannelMoreBottomSheet() + } +} diff --git a/app/src/main/res/layout/dialog_creator_channel_more.xml b/app/src/main/res/layout/dialog_creator_channel_more.xml new file mode 100644 index 00000000..f30a2d73 --- /dev/null +++ b/app/src/main/res/layout/dialog_creator_channel_more.xml @@ -0,0 +1,48 @@ + + + + + + + + + + +