Skip to content

Commit

Permalink
[ADD] : adapter set #13
Browse files Browse the repository at this point in the history
  • Loading branch information
lsakee committed Nov 24, 2023
1 parent d5bf9e5 commit 16f144e
Show file tree
Hide file tree
Showing 3 changed files with 99 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package org.sopt.carrot.presentation.exploremeeting.adapter

import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.recyclerview.widget.ListAdapter
import org.sopt.carrot.core.ui.view.ItemDiffCallback
import org.sopt.carrot.databinding.ItemMeetingHighlightBinding
import org.sopt.carrot.presentation.exploremeeting.viewholder.HighlightViewHolder
import org.sopt.carrot.presentation.model.MeetingHighlight

class HighlightAdapter(
) : ListAdapter<MeetingHighlight, HighlightViewHolder>(
HighLightDiffCalback
) {

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): HighlightViewHolder {
val binding =
ItemMeetingHighlightBinding.inflate(LayoutInflater.from(parent.context), parent, false)
return HighlightViewHolder(binding)
}

override fun onBindViewHolder(holder: HighlightViewHolder, position: Int) {
holder.bind(getItem(position))
}

companion object {
private val HighLightDiffCalback =
ItemDiffCallback<MeetingHighlight>(
onItemsTheSame = { old, new -> old.title == new.title },
onContentsTheSame = { old, new -> old == new }
)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package org.sopt.carrot.presentation.exploremeeting.adapter

import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.recyclerview.widget.ListAdapter
import org.sopt.carrot.core.ui.view.ItemDiffCallback
import org.sopt.carrot.databinding.ItemMeetingBinding
import org.sopt.carrot.presentation.exploremeeting.viewholder.MeetingViewHolder
import org.sopt.carrot.presentation.model.Meeting

class MeetingAdapter(
) : ListAdapter<Meeting, MeetingViewHolder>(
HighLightDiffCalback
) {

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MeetingViewHolder {
val binding =
ItemMeetingBinding.inflate(LayoutInflater.from(parent.context), parent, false)
return MeetingViewHolder(binding)
}

override fun onBindViewHolder(holder: MeetingViewHolder, position: Int) {
holder.bind(getItem(position))
}

companion object {
private val HighLightDiffCalback =
ItemDiffCallback<Meeting>(
onItemsTheSame = { old, new -> old.clubId == new.clubId },
onContentsTheSame = { old, new -> old == new }
)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package org.sopt.carrot.presentation.exploremeeting.adapter

import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.recyclerview.widget.ListAdapter
import org.sopt.carrot.core.ui.view.ItemDiffCallback
import org.sopt.carrot.databinding.ItemMeetingNewBinding
import org.sopt.carrot.presentation.exploremeeting.viewholder.NewMeetingViewHolder
import org.sopt.carrot.presentation.model.NewMeeting

class NewMeetingAdapter(
) : ListAdapter<NewMeeting, NewMeetingViewHolder>(
NewMeetingDiffCalback
) {

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): NewMeetingViewHolder {
val binding =
ItemMeetingNewBinding.inflate(LayoutInflater.from(parent.context), parent, false)
return NewMeetingViewHolder(binding)
}

override fun onBindViewHolder(holder: NewMeetingViewHolder, position: Int) {
holder.bind(getItem(position))
}

companion object {
private val NewMeetingDiffCalback =
ItemDiffCallback<NewMeeting>(
onItemsTheSame = { old, new -> old.title == new.title },
onContentsTheSame = { old, new -> old == new }
)
}
}

0 comments on commit 16f144e

Please sign in to comment.