Alternate colorized rows in list

This commit is contained in:
Daniele Verducci 2024-11-24 09:46:39 +01:00
parent 37b68450da
commit a4b43ffb10
3 changed files with 11 additions and 2 deletions

View File

@ -12,7 +12,6 @@ import androidx.recyclerview.widget.RecyclerView
import it.danieleverducci.lunatracker.entities.LunaEvent import it.danieleverducci.lunatracker.entities.LunaEvent
import it.danieleverducci.lunatracker.R import it.danieleverducci.lunatracker.R
import java.util.Date import java.util.Date
import java.util.Locale
class LunaEventRecyclerAdapter: RecyclerView.Adapter<LunaEventRecyclerAdapter.LunaEventVH> { class LunaEventRecyclerAdapter: RecyclerView.Adapter<LunaEventRecyclerAdapter.LunaEventVH> {
private val context: Context private val context: Context
@ -58,6 +57,9 @@ class LunaEventRecyclerAdapter: RecyclerView.Adapter<LunaEventRecyclerAdapter.Lu
position: Int position: Int
) { ) {
val item = items.get(position) val item = items.get(position)
holder.root.setBackgroundResource(
if (position % 2 == 0) R.color.list_background_even else R.color.list_background_odd
)
holder.type.text = item.getTypeEmoji(context) holder.type.text = item.getTypeEmoji(context)
holder.description.text = when(item.type) { holder.description.text = when(item.type) {
LunaEvent.TYPE_MEDICINE -> item.notes LunaEvent.TYPE_MEDICINE -> item.notes
@ -121,12 +123,14 @@ class LunaEventRecyclerAdapter: RecyclerView.Adapter<LunaEventRecyclerAdapter.Lu
} }
class LunaEventVH: RecyclerView.ViewHolder { class LunaEventVH: RecyclerView.ViewHolder {
val root: View
val type: TextView val type: TextView
val description: TextView val description: TextView
val quantity: TextView val quantity: TextView
val time: TextView val time: TextView
constructor(v: View) : super(v) { constructor(v: View) : super(v) {
root = v
type = v.findViewById<TextView>(R.id.type) type = v.findViewById<TextView>(R.id.type)
description = v.findViewById<TextView>(R.id.description) description = v.findViewById<TextView>(R.id.description)
quantity = v.findViewById<TextView>(R.id.quantity) quantity = v.findViewById<TextView>(R.id.quantity)

View File

@ -3,12 +3,15 @@
android:orientation="horizontal" android:orientation="horizontal"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:gravity="center_vertical"> android:gravity="center_vertical">
<TextView <TextView
android:id="@+id/type" android:id="@+id/type"
android:layout_width="80dp" android:layout_width="90dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:paddingLeft="10dp"
android:textSize="28sp" android:textSize="28sp"
android:lines="1" android:lines="1"
android:maxLines="1" android:maxLines="1"

View File

@ -6,4 +6,6 @@
<color name="translucent">#c000</color> <color name="translucent">#c000</color>
<color name="transparent">#0000</color> <color name="transparent">#0000</color>
<color name="grey">#ccc</color> <color name="grey">#ccc</color>
<color name="list_background_odd">#423B25</color>
<color name="list_background_even">@color/transparent</color>
</resources> </resources>