Skip to content

Commit

Permalink
[FEAT/#51] 로그아웃 커스텀 다이얼로그 구현
Browse files Browse the repository at this point in the history
  • Loading branch information
leeeyubin committed Jan 10, 2024
1 parent e024a07 commit 83f7707
Show file tree
Hide file tree
Showing 7 changed files with 138 additions and 21 deletions.
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
package com.going.presentation.setting

import android.os.Bundle
import androidx.core.content.ContextCompat
import com.going.presentation.R
import com.going.presentation.databinding.ActivitySettingBinding
import com.going.ui.base.BaseActivity
import com.going.ui.extension.setOnSingleClickListener

class SettingActivity : BaseActivity<ActivitySettingBinding>(R.layout.activity_setting) {

private lateinit var settingDialog: SettingCustomDialogFragment
private lateinit var quitDialog: SettingQuitDialogFragment
private lateinit var logoutDialog: SettingLogoutDialogFragment

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Expand Down Expand Up @@ -49,19 +49,24 @@ class SettingActivity : BaseActivity<ActivitySettingBinding>(R.layout.activity_s

private fun initLogoutClickListener() {
binding.btnSettingLogoutEnter.setOnSingleClickListener {

showLogoutAlertDialog()
}
}

private fun initQuitClickListener() {
binding.btnSettingQuit.setOnSingleClickListener {
showLogoutAlertDialog()
showQuitAlertDialog()
}
}

private fun showLogoutAlertDialog() {
settingDialog = SettingCustomDialogFragment()
settingDialog.show(supportFragmentManager, settingDialog.tag)
logoutDialog = SettingLogoutDialogFragment()
logoutDialog.show(supportFragmentManager, logoutDialog.tag)
}

private fun showQuitAlertDialog() {
quitDialog = SettingQuitDialogFragment()
quitDialog.show(supportFragmentManager, quitDialog.tag)
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
package com.going.presentation.setting

import android.os.Bundle
import android.view.View
import android.view.WindowManager
import com.going.presentation.R
import com.going.presentation.databinding.FragmentSettingLogoutDialogBinding
import com.going.ui.base.BaseDialog
import com.going.ui.extension.setOnSingleClickListener

class SettingLogoutDialogFragment :
BaseDialog<FragmentSettingLogoutDialogBinding>(R.layout.fragment_setting_logout_dialog) {

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)

initNegativeClickListener()
initPositiveClickListener()

}

override fun onStart() {
super.onStart()
dialog?.window?.apply {
setLayout(
WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.MATCH_PARENT,
)
setBackgroundDrawableResource(R.color.transparent_60)
}
}

private fun initPositiveClickListener() {
binding.tvDialogPositive.setOnSingleClickListener {
// 로그아웃 버튼 눌렀을 때의 로직
}
}

private fun initNegativeClickListener() {
binding.btnDialogNegative.setOnSingleClickListener {
dismiss()
}
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,13 @@ package com.going.presentation.setting
import android.os.Bundle
import android.view.View
import android.view.WindowManager
import androidx.core.content.ContextCompat
import com.going.presentation.R
import com.going.presentation.databinding.FragmentSettingCustomDialogBinding
import com.going.presentation.databinding.FragmentSettingQuitDialogBinding
import com.going.ui.base.BaseDialog
import com.going.ui.extension.setOnSingleClickListener

class SettingCustomDialogFragment :
BaseDialog<FragmentSettingCustomDialogBinding>(R.layout.fragment_setting_custom_dialog) {
class SettingQuitDialogFragment :
BaseDialog<FragmentSettingQuitDialogBinding>(R.layout.fragment_setting_quit_dialog) {

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
Expand Down Expand Up @@ -38,7 +37,7 @@ class SettingCustomDialogFragment :
}

private fun initNegativeClickListener() {
// 탈퇴하기 버튼을 눌렀을 때의 처리
// 탈퇴하기 버튼을 눌렀을 때의 로직
}

}
Expand Down
2 changes: 1 addition & 1 deletion presentation/src/main/res/layout/activity_setting.xml
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@
style="@style/TextAppearance.Doorip.Detail2.Regular"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/setting_dialog_quit"
android:text="@string/setting_quit_dialog_quit"
android:textColor="@color/gray_300"
app:layout_constraintBottom_toBottomOf="@id/iv_setting_quit"
app:layout_constraintEnd_toStartOf="@id/iv_setting_quit"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<layout>

<data>

</data>

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">

<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="54dp"
android:background="@drawable/shape_rect2_white000_fill"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">

<TextView
android:id="@+id/tv_dialog_title"
style="@style/TextAppearance.Doorip.Body1.Bold"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="24dp"
android:text="@string/setting_logout_title"
android:textColor="@color/gray_600"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<TextView
android:id="@+id/btn_dialog_negative"
style="@style/TextAppearance.Doorip.Detail2.Bold"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="12dp"
android:text="@string/setting_logout_negative"
android:textColor="@color/gray_200"
app:layout_constraintBottom_toBottomOf="@id/tv_dialog_positive"
app:layout_constraintEnd_toStartOf="@id/tv_dialog_positive"
app:layout_constraintTop_toTopOf="@id/tv_dialog_positive" />

<TextView
android:id="@+id/tv_dialog_positive"
style="@style/TextAppearance.Doorip.Detail2.Bold"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="16dp"
android:text="@string/setting_logout_positive"
android:textColor="@color/gray_600"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/tv_dialog_title" />

</androidx.constraintlayout.widget.ConstraintLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

</layout>
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="24dp"
android:text="@string/setting_dialog_title"
android:text="@string/setting_quit_dialog_title"
android:textColor="@color/gray_600"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
Expand All @@ -39,7 +39,7 @@
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="4dp"
android:text="@string/setting_dialog_message"
android:text="@string/setting_quit_dialog_message"
android:textColor="@color/gray_300"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tv_dialog_title" />
Expand All @@ -50,7 +50,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="12dp"
android:text="@string/setting_dialog_negative"
android:text="@string/setting_quit_dialog_negative"
android:textColor="@color/gray_200"
app:layout_constraintBottom_toBottomOf="@id/tv_dialog_positive"
app:layout_constraintEnd_toStartOf="@id/tv_dialog_positive"
Expand All @@ -64,7 +64,7 @@
android:layout_marginTop="30dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="16dp"
android:text="@string/setting_dialog_positive"
android:text="@string/setting_quit_dialog_positive"
android:textColor="@color/gray_600"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
Expand Down
13 changes: 8 additions & 5 deletions presentation/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -127,11 +127,14 @@
<string name="setting_tv_policy">약관 및 정책</string>
<string name="setting_tv_about_doorip">About doorip</string>
<string name="setting_tv_logout">로그아웃</string>
<string name="setting_dialog_title">정말 탈퇴하시겠어요?</string>
<string name="setting_dialog_message">탈퇴시, 정보가 모두 없어져요.</string>
<string name="setting_dialog_negative">탈퇴하기</string>
<string name="setting_dialog_positive">남아있기</string>
<string name="setting_dialog_quit">회원탈퇴</string>
<string name="setting_quit_dialog_title">정말 탈퇴하시겠어요?</string>
<string name="setting_quit_dialog_message">탈퇴시, 정보가 모두 없어져요.</string>
<string name="setting_quit_dialog_negative">탈퇴하기</string>
<string name="setting_quit_dialog_positive">남아있기</string>
<string name="setting_quit_dialog_quit">회원탈퇴</string>
<string name="setting_logout_title">정말 로그아웃하시겠어요?</string>
<string name="setting_logout_negative">취소</string>
<string name="setting_logout_positive">로그아웃</string>

<!--profile-->
<string name="profile_tv_title">프로필 생성</string>
Expand Down

0 comments on commit 83f7707

Please sign in to comment.