diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 4cbc226b..9eb09dc4 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -92,12 +92,12 @@
android:screenOrientation="portrait" />
diff --git a/app/src/main/java/sopt/uni/presentation/HistoryAdapter.kt b/app/src/main/java/sopt/uni/presentation/HistoryAdapter.kt
index 5a9f13fc..636fed1a 100644
--- a/app/src/main/java/sopt/uni/presentation/HistoryAdapter.kt
+++ b/app/src/main/java/sopt/uni/presentation/HistoryAdapter.kt
@@ -8,6 +8,7 @@ import androidx.recyclerview.widget.RecyclerView
import sopt.uni.data.entity.history.HistoryItem
import sopt.uni.databinding.ItemHistorylistBinding
import sopt.uni.util.extension.ItemDiffCallback
+import sopt.uni.util.extension.setOnSingleClickListener
class HistoryAdapter(
private val context: Context,
@@ -65,7 +66,7 @@ class HistoryAdapter(
historyItemGameResult.text = item.result
historyItemRightImage.setImageDrawable(binding.root.context.getDrawable(item.next))
- historyItemRightImage.setOnClickListener {
+ historyItemRightImage.setOnSingleClickListener {
// 클릭 이벤트 처리
val item = getItem(adapterPosition)
itemClickedListener.invoke(item)
diff --git a/app/src/main/java/sopt/uni/presentation/HistoryDialog.kt b/app/src/main/java/sopt/uni/presentation/HistoryDialog.kt
new file mode 100644
index 00000000..1e705e4b
--- /dev/null
+++ b/app/src/main/java/sopt/uni/presentation/HistoryDialog.kt
@@ -0,0 +1,22 @@
+package sopt.uni.presentation
+
+import android.os.Bundle
+import android.view.View
+import sopt.uni.R
+import sopt.uni.databinding.TitleAction1DialogBinding
+import sopt.uni.util.extension.setOnSingleClickListener
+
+// 예시용 입니다! 히스토리는 다이얼로그 없어용
+class HistoryDialog :
+ BindingDialogFragment(R.layout.title_action1_dialog) {
+ override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
+ super.onViewCreated(view, savedInstanceState)
+ // 텍스트 넣기
+ binding.dialogBody.setText("내용임둥")
+ binding.dialogTitle.setText("제목임둥")
+ // 클릭시 로직 처리
+ binding.btnPositive.setOnSingleClickListener {
+ dismiss()
+ }
+ }
+}
diff --git a/app/src/main/java/sopt/uni/presentation/MainHistoryActivity.kt b/app/src/main/java/sopt/uni/presentation/HistoryMainActivity.kt
similarity index 82%
rename from app/src/main/java/sopt/uni/presentation/MainHistoryActivity.kt
rename to app/src/main/java/sopt/uni/presentation/HistoryMainActivity.kt
index 4dd08495..4e34c1ec 100644
--- a/app/src/main/java/sopt/uni/presentation/MainHistoryActivity.kt
+++ b/app/src/main/java/sopt/uni/presentation/HistoryMainActivity.kt
@@ -10,12 +10,12 @@ import sopt.uni.data.entity.history.HistoryList
import sopt.uni.databinding.ActivityMainHistoryBinding
import sopt.uni.util.binding.BindingActivity
-class MainHistoryActivity :
+class HistoryMainActivity :
BindingActivity(R.layout.activity_main_history) {
private val historyAdapter by lazy {
HistoryAdapter(
- context = this@MainHistoryActivity,
+ context = this@HistoryMainActivity,
onEmptyList = { isEmpty ->
if (isEmpty) {
binding.itemHistoryEmptylist.visibility = View.VISIBLE
@@ -24,7 +24,7 @@ class MainHistoryActivity :
}
},
itemClickedListener = { historyItem ->
- val intent = Intent(this, SubHistoryActivity::class.java)
+ val intent = Intent(this, HistorySubActivity::class.java)
startActivity(intent)
},
)
@@ -35,14 +35,17 @@ class MainHistoryActivity :
setContentView(binding.root)
binding.rvHistoryList.adapter = historyAdapter
- binding.rvHistoryList.layoutManager = LinearLayoutManager(this@MainHistoryActivity)
+ binding.rvHistoryList.layoutManager = LinearLayoutManager(this@HistoryMainActivity)
+
+ // 다이얼로그 띄우는 부분
+ HistoryDialog().show(supportFragmentManager, "HistoryDialog")
historyAdapter.submitList(HistoryList)
val dividerItemDecoration =
DividerItemDecoration(
binding.rvHistoryList.context,
- LinearLayoutManager(this@MainHistoryActivity).orientation,
+ LinearLayoutManager(this@HistoryMainActivity).orientation,
)
binding.rvHistoryList.addItemDecoration(dividerItemDecoration)
diff --git a/app/src/main/java/sopt/uni/presentation/SubHistoryActivity.kt b/app/src/main/java/sopt/uni/presentation/HistorySubActivity.kt
similarity index 85%
rename from app/src/main/java/sopt/uni/presentation/SubHistoryActivity.kt
rename to app/src/main/java/sopt/uni/presentation/HistorySubActivity.kt
index 5240837e..aa07102f 100644
--- a/app/src/main/java/sopt/uni/presentation/SubHistoryActivity.kt
+++ b/app/src/main/java/sopt/uni/presentation/HistorySubActivity.kt
@@ -6,14 +6,14 @@ import sopt.uni.R
import sopt.uni.databinding.ActivitySubHistoryBinding
import sopt.uni.util.binding.BindingActivity
-class SubHistoryActivity :
+class HistorySubActivity :
BindingActivity(R.layout.activity_sub_history) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(binding.root)
binding.historySubBack.setOnClickListener {
- val intent = Intent(this, MainHistoryActivity::class.java)
+ val intent = Intent(this, HistoryMainActivity::class.java)
startActivity(intent)
finish()
}
diff --git a/app/src/main/java/sopt/uni/presentation/HistoryViewModel.kt b/app/src/main/java/sopt/uni/presentation/HistoryViewModel.kt
deleted file mode 100644
index ebe7bc9c..00000000
--- a/app/src/main/java/sopt/uni/presentation/HistoryViewModel.kt
+++ /dev/null
@@ -1,120 +0,0 @@
-package sopt.uni.presentation
-
-import androidx.annotation.DrawableRes
-import androidx.lifecycle.ViewModel
-import sopt.uni.R
-
-class HistoryViewModel : ViewModel() {
- data class Repo(
- val date: String,
- @DrawableRes val result_img: Int,
- val title: String,
- val result: String,
- @DrawableRes val next: Int,
- )
-
- private val mockRepoList = listOf(
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- Repo(
- date = "23.06.20",
- result_img = R.drawable.rectangle,
- title = "대답 유도하기",
- result = "숭리",
- next = R.drawable.right,
- ),
- )
-
- fun getMockRepoList(): List {
- return mockRepoList
- }
-}
diff --git a/app/src/main/java/sopt/uni/util/binding/BindingDialogFragment.kt b/app/src/main/java/sopt/uni/util/binding/BindingDialogFragment.kt
new file mode 100644
index 00000000..18b9468c
--- /dev/null
+++ b/app/src/main/java/sopt/uni/util/binding/BindingDialogFragment.kt
@@ -0,0 +1,40 @@
+package sopt.uni.presentation
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import android.view.WindowManager
+import androidx.annotation.LayoutRes
+import androidx.databinding.DataBindingUtil
+import androidx.databinding.ViewDataBinding
+import androidx.fragment.app.DialogFragment
+
+abstract class BindingDialogFragment(@LayoutRes private val layoutRes: Int) :
+ DialogFragment() {
+ private var _binding: B? = null
+ val binding get() = requireNotNull(_binding!!) { "${this::class.java.simpleName}에서 에러가 발생했습니다." }
+
+ override fun onStart() {
+ super.onStart()
+ dialog?.window?.setLayout(
+ WindowManager.LayoutParams.WRAP_CONTENT,
+ WindowManager.LayoutParams.WRAP_CONTENT,
+ )
+ dialog?.window?.setBackgroundDrawableResource(android.R.color.transparent)
+ }
+
+ override fun onCreateView(
+ inflater: LayoutInflater,
+ container: ViewGroup?,
+ savedInstanceState: Bundle?,
+ ): View {
+ _binding = DataBindingUtil.inflate(inflater, layoutRes, container, false)
+ return binding.root
+ }
+
+ override fun onDestroyView() {
+ super.onDestroyView()
+ _binding = null
+ }
+}
diff --git a/app/src/main/java/sopt/uni/util/binding/BindingFragment.kt b/app/src/main/java/sopt/uni/util/binding/BindingFragment.kt
index 5c42d116..94f42325 100644
--- a/app/src/main/java/sopt/uni/util/binding/BindingFragment.kt
+++ b/app/src/main/java/sopt/uni/util/binding/BindingFragment.kt
@@ -11,7 +11,7 @@ import androidx.fragment.app.Fragment
import sopt.uni.R
abstract class BindingFragment(
- @LayoutRes private val layoutRes: Int
+ @LayoutRes private val layoutRes: Int,
) : Fragment() {
private var _binding: T? = null
protected val binding get() = _binding ?: error(getString(R.string.binding_error))
@@ -19,7 +19,7 @@ abstract class BindingFragment(
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
- savedInstanceState: Bundle?
+ savedInstanceState: Bundle?,
): View? {
_binding = DataBindingUtil.inflate(inflater, layoutRes, container, false)
binding.lifecycleOwner = viewLifecycleOwner
diff --git a/app/src/main/res/layout/activity_mission_detail_create.xml b/app/src/main/res/layout/activity_mission_detail_create.xml
index 38b32a0f..9bdc6b9a 100644
--- a/app/src/main/res/layout/activity_mission_detail_create.xml
+++ b/app/src/main/res/layout/activity_mission_detail_create.xml
@@ -216,7 +216,8 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="16dp"
- android:layout_marginVertical="16dp"
+ android:layout_marginTop="16dp"
+ android:layout_marginBottom="40dp"
android:background="@drawable/bg_mission_detail_button_rounded"
android:fontFamily="@font/pretendard_semibold"
android:paddingVertical="12dp"
diff --git a/app/src/main/res/layout/activity_sub_history.xml b/app/src/main/res/layout/activity_sub_history.xml
index 8d79717e..2e333d2e 100644
--- a/app/src/main/res/layout/activity_sub_history.xml
+++ b/app/src/main/res/layout/activity_sub_history.xml
@@ -12,7 +12,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/Gray_100"
- tools:context=".presentation.SubHistoryActivity">
+ tools:context=".presentation.HistorySubActivity">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/no_title_action1_dialog.xml b/app/src/main/res/layout/no_title_action1_dialog.xml
new file mode 100644
index 00000000..3f9979fc
--- /dev/null
+++ b/app/src/main/res/layout/no_title_action1_dialog.xml
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/no_title_action2_dialog.xml b/app/src/main/res/layout/no_title_action2_dialog.xml
new file mode 100644
index 00000000..7c24f683
--- /dev/null
+++ b/app/src/main/res/layout/no_title_action2_dialog.xml
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/title_action1_dialog.xml b/app/src/main/res/layout/title_action1_dialog.xml
new file mode 100644
index 00000000..6ee20dcc
--- /dev/null
+++ b/app/src/main/res/layout/title_action1_dialog.xml
@@ -0,0 +1,59 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/title_action2_dialog.xml b/app/src/main/res/layout/title_action2_dialog.xml
new file mode 100644
index 00000000..7da9d008
--- /dev/null
+++ b/app/src/main/res/layout/title_action2_dialog.xml
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 2e55b682..328353c4 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -76,6 +76,12 @@
카카오 로그인
Google계정으로 로그인
+
+ 취소
+ 적용하기
+ body
+ 확인
+ Title
한판승부