This repository has been archived on 2026-05-26. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
weserplaner/app/src/main/java/com/denizk0461/studip/adapter/StudIPEventAdapter.kt
T

46 lines
1.7 KiB
Kotlin
Raw Normal View History

2023-04-08 13:43:26 +02:00
package com.denizk0461.studip.adapter
import android.util.Log
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import com.denizk0461.studip.data.StudIPEvent
import com.denizk0461.studip.databinding.ItemEventBinding
import com.denizk0461.studip.databinding.ItemEventPageBinding
class StudIPEventAdapter(private val events: List<StudIPEvent>) : RecyclerView.Adapter<StudIPEventAdapter.EventViewHolder>() {
class EventViewHolder(val binding: ItemEventPageBinding) : RecyclerView.ViewHolder(binding.root)
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): EventViewHolder = EventViewHolder(
ItemEventPageBinding.inflate(
LayoutInflater.from(parent.context),
parent,
false
)
)
override fun getItemCount(): Int = 5
override fun onBindViewHolder(holder: EventViewHolder, position: Int) {
var itemCount = 0
events.filter { it.day == position }.forEach { event ->
val newView = ItemEventBinding.inflate(
LayoutInflater.from(holder.binding.root.context),
holder.binding.root,
false
).also { item ->
2023-04-08 15:13:11 +02:00
Log.d("HELLO", "generating ${event.title}...2")
2023-04-08 13:43:26 +02:00
itemCount += 1
item.textTitle.text = event.title
item.textLecturers.text = event.lecturer.joinToString(", ")
item.textRoom.text = event.room
item.textTimeslot.text = event.timeslot
}
holder.binding.pageLayout.addView(newView.root)
}
if (itemCount == 0) {
// TODO inflate view saying "no events!" or sth
}
}
}