Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,10 @@ class DiningActivity : KoinNavigationDrawerActivity() {
DiningType.Breakfast -> tabsDiningTime.selectTab(tabsDiningTime.getTabAt(0))
DiningType.Lunch -> tabsDiningTime.selectTab(tabsDiningTime.getTabAt(1))
DiningType.Dinner -> tabsDiningTime.selectTab(tabsDiningTime.getTabAt(2))
DiningType.NextBreakfast -> tabsDiningTime.selectTab(tabsDiningTime.getTabAt(0))
DiningType.NextBreakfast -> {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DiningType에서 NextBreakfast를 없애려고 하는데 혹시 이거 식단 상세에서 쓰이는지 궁금합니다!

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

따로 사용하고 있는 곳은 없어서 관련된 참조 모두 삭제하셔도 될 거 같습니다!!

tabsDiningTime.selectTab(tabsDiningTime.getTabAt(0))
diningDateAdapter.setSelectedPosition(dates.size / 2 + 1)
}
}
}
}
Expand All @@ -90,10 +93,10 @@ class DiningActivity : KoinNavigationDrawerActivity() {
recyclerViewCalendar.adapter = diningDateAdapter
val current = TimeUtil.getCurrentTime()
dates.add(current)
repeat(7) {
repeat(3) {
dates.add(0, TimeUtil.getPreviousDayDate(dates.first()))
}
repeat(7) {
repeat(3) {
dates.add(TimeUtil.getNextDayDate(dates.last()))
}
diningDateAdapter.submitList(dates)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,26 @@ class DiningAdapter : ListAdapter<Dining, RecyclerView.ViewHolder>(diffCallback)
}

class DiningViewHolder(private val binding: ItemDiningBinding) : RecyclerView.ViewHolder(binding.root) {

private fun setEmptyDataVisibility(dining: Dining) {
with(binding) {
if(dining.kcal.isEmpty()) {
textViewKcal.visibility = View.GONE
dividerDot.visibility = View.GONE
}
if(dining.priceCash.isEmpty()) {
textViewCashPrice.visibility = View.GONE
dividerSlash.visibility = View.GONE
}
if(dining.priceCard.isEmpty()) {
textViewCardPrice.visibility = View.GONE
dividerSlash.visibility = View.GONE
}
if(dining.priceCard.isEmpty() && dining.priceCash.isEmpty()) {
dividerDot.visibility = View.GONE
}
}
}

fun bind(dining: Dining) {
with(binding) {
Expand All @@ -39,12 +59,18 @@ class DiningAdapter : ListAdapter<Dining, RecyclerView.ViewHolder>(diffCallback)
textViewCardPrice.text =
context.getString(R.string.price, dining.priceCard)
textViewDiningMenuItems.text = dining.menu.joinToString("\n")

setEmptyDataVisibility(dining)

if(dining.imageUrl.isNotEmpty()) {
Glide.with(context)
.load(dining.imageUrl)
.into(imageViewDining)

cardViewDining.strokeWidth = 0
textViewNoPhoto.visibility = View.INVISIBLE
imageViewNoPhoto.visibility = View.INVISIBLE

val dialog = Dialog(context).apply {
setContentView(R.layout.dialog_dining_image)
window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT))
Expand All @@ -62,19 +88,20 @@ class DiningAdapter : ListAdapter<Dining, RecyclerView.ViewHolder>(diffCallback)
}
}

if(dining.changedAt.isNotEmpty()) {
textViewDiningChanged.visibility = View.VISIBLE
} else {
textViewDiningChanged.visibility = View.INVISIBLE
}

if(dining.soldoutAt.isNotEmpty()) {
groupSoldOut.visibility = View.VISIBLE
textViewDiningSoldOut.visibility = View.VISIBLE
textViewDiningChanged.visibility = View.INVISIBLE
} else {
groupSoldOut.visibility = View.INVISIBLE
textViewDiningSoldOut.visibility = View.INVISIBLE
}

if(dining.changedAt.isNotEmpty()) {
textViewDiningChanged.visibility = View.VISIBLE
} else {
textViewDiningChanged.visibility = View.INVISIBLE
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ class DiningDateAdapter(
textViewDayOfTheWeek.text = DateFormatUtil.getDayOfWeek(date)
textViewDay.text = date.date.toString()

if (position < selectedPosition) {
if (position < itemCount / 2) {
textViewDay.setTextColor(
ContextCompat.getColor(
context,
Expand Down Expand Up @@ -97,7 +97,7 @@ class DiningDateAdapter(
)
else
notifyItemRangeChanged(position, selectedPosition - position + 1)
selectedPosition = position
setSelectedPosition(position)
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,8 @@ class DiningViewModel @Inject constructor(
MutableStateFlow<List<Dining>>(emptyList())
val dining: StateFlow<List<Dining>> get() = _dining

init {
setSelectedDate(DiningUtil.getCurrentDate())
}

fun setSelectedDate(date: Date) {
_selectedDate.value = TimeUtil.dateFormatToYYYYMMDD(date)
_selectedDate.value = TimeUtil.dateFormatToYYMMDD(date)
}

fun getDining(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,9 +87,9 @@ class MainActivity : KoinNavigationDrawerActivity() {
offscreenPageLimit = 3
currentItem = Int.MAX_VALUE / 2

val nextItemPx = resources.getDimension(R.dimen.view_pager_next_item_visible_dp)
val currentItemMarginPx = resources.getDimension(R.dimen.view_pager_item_margin)
setPageTransformer(ScaledViewPager2Transformation(currentItemMarginPx, nextItemPx))
// val nextItemPx = resources.getDimension(R.dimen.view_pager_next_item_visible_dp)
// val currentItemMarginPx = resources.getDimension(R.dimen.view_pager_item_margin)
// setPageTransformer(ScaledViewPager2Transformation(currentItemMarginPx, nextItemPx))
addItemDecoration(
HorizontalMarginItemDecoration(
this@MainActivity,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/last_update"
android:layout_marginEnd="4dp"
app:layout_constraintEnd_toStartOf="@id/text_view_updated_at"
app:layout_constraintTop_toTopOf="@id/text_view_updated_at"
app:layout_constraintBottom_toBottomOf="@id/text_view_updated_at" />

<TextView
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/last_update"
android:layout_marginEnd="4dp"
app:layout_constraintEnd_toStartOf="@id/text_view_updated_at"
app:layout_constraintTop_toTopOf="@id/text_view_updated_at"
app:layout_constraintBottom_toBottomOf="@id/text_view_updated_at" />

<TextView
Expand Down
12 changes: 6 additions & 6 deletions koin/src/main/res/layout/dialog_dining_image.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="324dp"
android:layout_height="224dp"
xmlns:app="http://schemas.android.com/apk/res-auto">

<ImageView
Expand All @@ -14,11 +14,11 @@

<ImageView
android:id="@+id/image_view_dining"
android:layout_width="342dp"
android:layout_height="224dp"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginTop="13dp"
android:scaleType="centerCrop"
android:src="@drawable/no_photo"
android:scaleType="fitCenter"
android:adjustViewBounds="true"
app:layout_constraintTop_toBottomOf="@id/image_view_close"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
Expand Down
Loading