diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 4759323b..5ca009dc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -97,7 +97,7 @@ + android:screenOrientation="portrait" /> + android:screenOrientation="portrait" /> + android:screenOrientation="portrait" /> + diff --git a/presentation/src/main/java/com/going/presentation/checkfriends/CheckFriendsActivity.kt b/presentation/src/main/java/com/going/presentation/checkfriends/CheckFriendsActivity.kt new file mode 100644 index 00000000..d4525e45 --- /dev/null +++ b/presentation/src/main/java/com/going/presentation/checkfriends/CheckFriendsActivity.kt @@ -0,0 +1,73 @@ +package com.going.presentation.checkfriends + +import android.os.Bundle +import android.view.View +import androidx.activity.viewModels +import com.going.presentation.R +import com.going.presentation.databinding.ActivityCheckFriendsBinding +import com.going.presentation.todo.ourtodo.OurTodoFriendAdapter +import com.going.ui.base.BaseActivity +import com.going.ui.extension.setOnSingleClickListener + +class CheckFriendsActivity : + BaseActivity(R.layout.activity_check_friends) { + + private var _adapter: OurTodoFriendAdapter? = null + private val adapter + get() = requireNotNull(_adapter) { getString(R.string.adapter_not_initialized_error_msg) } + + private val viewModel by viewModels() + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + + initBackClickListener() + initAdapter() + setProgressBarStatus() + + } + + private fun initBackClickListener() { + binding.btnCheckFriendsBack.setOnSingleClickListener { + finish() + } + } + + private fun initAdapter() { + _adapter = OurTodoFriendAdapter() + binding.rvCheckFriendsMember.adapter = adapter + adapter.submitList(viewModel.mockParticipantsList) + } + + private fun setProgressBarStatus() { + // styleA의 평균 값이 1이라고 가정 + binding.progressBarCheckFriends1.progress = 1 + if (binding.progressBarCheckFriends1.progress <= 2) { + // 평균 값이 0 ~2면 1 더하기 + binding.progressBarCheckFriends1.progress = 1 + 1 + binding.progressBarCheckFriends2.progress = 2 + 1 + binding.progressBarCheckFriends3.progress = 0 + 1 + } + + // styleD의 평균 값이 3이라고 가정 + binding.progressBarCheckFriends4.progress = 3 + if (binding.progressBarCheckFriends4.progress > 2) { + // 프로그레스바 반대 방향으로 적용 + binding.progressBarCheckFriends4.visibility = View.INVISIBLE + binding.progressBarCheckFriends4Revert.visibility = View.VISIBLE + + binding.progressBarCheckFriends5.visibility = View.INVISIBLE + binding.progressBarCheckFriends5Revert.visibility = View.VISIBLE + + // 평균 값이 4 ~5 라면 2 빼기 + binding.progressBarCheckFriends4Revert.progress = 3 - 2 + binding.progressBarCheckFriends5Revert.progress = 4 - 2 + } + } + + override fun onDestroy() { + super.onDestroy() + _adapter = null + } + +} \ No newline at end of file diff --git a/presentation/src/main/java/com/going/presentation/checkfriends/CheckFriendsViewModel.kt b/presentation/src/main/java/com/going/presentation/checkfriends/CheckFriendsViewModel.kt new file mode 100644 index 00000000..7fc46905 --- /dev/null +++ b/presentation/src/main/java/com/going/presentation/checkfriends/CheckFriendsViewModel.kt @@ -0,0 +1,17 @@ +package com.going.presentation.checkfriends + +import androidx.lifecycle.ViewModel +import com.going.domain.entity.response.TripParticipantsListModel + +class CheckFriendsViewModel : ViewModel() { + + val mockParticipantsList: List = listOf( + TripParticipantsListModel.TripParticipantModel(0, "일지민", 100), + TripParticipantsListModel.TripParticipantModel(1, "이지민", 100), + TripParticipantsListModel.TripParticipantModel(2, "삼지민", 100), + TripParticipantsListModel.TripParticipantModel(3, "사지민", 100), + TripParticipantsListModel.TripParticipantModel(4, "오지민", 100), + TripParticipantsListModel.TripParticipantModel(5, "육지민", 100), + ) + +} \ No newline at end of file diff --git a/presentation/src/main/java/com/going/presentation/setting/SettingActivity.kt b/presentation/src/main/java/com/going/presentation/setting/SettingActivity.kt index d806ed87..2e4ca739 100644 --- a/presentation/src/main/java/com/going/presentation/setting/SettingActivity.kt +++ b/presentation/src/main/java/com/going/presentation/setting/SettingActivity.kt @@ -25,31 +25,31 @@ class SettingActivity : BaseActivity(R.layout.activity_s } private fun initProfileClickListener() { - binding.btnSettingProfileEnter.setOnSingleClickListener { + binding.layoutSettingProfile.setOnSingleClickListener { } } private fun initInquireClickListener() { - binding.btnSettingInquireEnter.setOnSingleClickListener { + binding.layoutSettingInquire.setOnSingleClickListener { } } private fun initPolicyClickListener() { - binding.btnSettingPolicyEnter.setOnSingleClickListener { + binding.layoutSettingPolicy.setOnSingleClickListener { } } private fun initAboutDooripClickListener() { - binding.btnSettingAboutDooripEnter.setOnSingleClickListener { + binding.layoutSettingAboutDoorip.setOnSingleClickListener { } } private fun initLogoutClickListener() { - binding.btnSettingLogoutEnter.setOnSingleClickListener { + binding.layoutSettingLogout.setOnSingleClickListener { showLogoutAlertDialog() } } diff --git a/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoDecoration.kt b/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoDecoration.kt new file mode 100644 index 00000000..f44012d2 --- /dev/null +++ b/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoDecoration.kt @@ -0,0 +1,23 @@ +package com.going.presentation.todo.ourtodo + +import android.content.Context +import android.graphics.Rect +import android.view.View +import androidx.recyclerview.widget.RecyclerView + +class OurTodoDecoration(val context: Context) : RecyclerView.ItemDecoration() { + + override fun getItemOffsets( + outRect: Rect, + view: View, + parent: RecyclerView, + state: RecyclerView.State + ) { + super.getItemOffsets(outRect, view, parent, state) + val position = parent.getChildAdapterPosition(view) + + if (position == parent.adapter?.itemCount?.minus(1)) { + outRect.right = 150 + } + } +} diff --git a/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoFragment.kt b/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoFragment.kt index ea501ed1..f8cfcb84 100644 --- a/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoFragment.kt +++ b/presentation/src/main/java/com/going/presentation/todo/ourtodo/OurTodoFragment.kt @@ -33,6 +33,7 @@ class OurTodoFragment() : BaseFragment(R.layout.fragment initAdapter() initAddTodoBtnListener() + initItemDecoration() setDateTextColor() setProgressBarStatus() setTabLayout() @@ -53,6 +54,12 @@ class OurTodoFragment() : BaseFragment(R.layout.fragment } } + private fun initItemDecoration() { + val itemDeco = OurTodoDecoration(requireContext()) + binding.rvOurTripFriend.addItemDecoration(itemDeco) + } + + private fun setDateTextColor() { binding.tvOurTodoTitleDown.apply { text = SpannableStringBuilder(text).apply { diff --git a/presentation/src/main/res/drawable/layer_list_trip_friends_progress_bar.xml b/presentation/src/main/res/drawable/layer_list_trip_friends_progress_bar.xml new file mode 100644 index 00000000..c008e5e7 --- /dev/null +++ b/presentation/src/main/res/drawable/layer_list_trip_friends_progress_bar.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/presentation/src/main/res/drawable/shape_rect_4_white000_fill.xml b/presentation/src/main/res/drawable/shape_rect_4_white000_fill.xml index 4f1c1afb..a0406f33 100644 --- a/presentation/src/main/res/drawable/shape_rect_4_white000_fill.xml +++ b/presentation/src/main/res/drawable/shape_rect_4_white000_fill.xml @@ -2,7 +2,7 @@ - + \ No newline at end of file diff --git a/presentation/src/main/res/drawable/shape_rect_6_white000_fill_gray200_line.xml b/presentation/src/main/res/drawable/shape_rect_6_white000_fill_gray200_line.xml new file mode 100644 index 00000000..bb46bc7c --- /dev/null +++ b/presentation/src/main/res/drawable/shape_rect_6_white000_fill_gray200_line.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/presentation/src/main/res/layout/activity_check_friends.xml b/presentation/src/main/res/layout/activity_check_friends.xml new file mode 100644 index 00000000..bea34da6 --- /dev/null +++ b/presentation/src/main/res/layout/activity_check_friends.xml @@ -0,0 +1,514 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/presentation/src/main/res/values/strings.xml b/presentation/src/main/res/values/strings.xml index bc083c4e..ccb05878 100644 --- a/presentation/src/main/res/values/strings.xml +++ b/presentation/src/main/res/values/strings.xml @@ -149,4 +149,24 @@ 잘못된 초대코드예요. 다음 + + 여행 친구들 + 멤버 + 우리의 취향 태그 + 여행 계획 + 철저하게 + 즉흥적으로 + 여행 장소 + 관광지 + 로컬장소 + 식당 + 유명 맛집 + 가까운 곳 + 사진 + 사진필수 + 눈에 담기 + 여행 일정 + 알차게 + 여유롭게 +