34 lines
1.6 KiB
Kotlin
34 lines
1.6 KiB
Kotlin
package com.adlerosn.brasilfurfest.schedule.adapters
|
|
|
|
import android.content.res.ColorStateList
|
|
import android.database.DataSetObserver
|
|
import android.view.View
|
|
import android.view.ViewGroup
|
|
import android.widget.ListAdapter
|
|
import com.adlerosn.brasilfurfest.R
|
|
import com.adlerosn.brasilfurfest.helper.inflate
|
|
import com.adlerosn.brasilfurfest.helper.layoutInflater
|
|
import kotlinx.android.synthetic.main.activity_search_filter_circle.view.*
|
|
import kotlinx.android.synthetic.main.activity_search_filter_criteria_item.view.*
|
|
|
|
class TagTripleListAdapter(val tagTriples: List<Triple<String, Int, ()->Any>>) : ListAdapter {
|
|
override fun isEmpty(): Boolean = tagTriples.isEmpty()
|
|
override fun getView(position: Int, convertView: View?, parent: ViewGroup): View {
|
|
val view = convertView ?: parent.context.layoutInflater.inflate(R.layout.activity_search_filter_criteria_itemdialog)
|
|
val item = tagTriples[position]
|
|
view.tag_label.text = item.first
|
|
view.tag_color.imageTintList = ColorStateList.valueOf(item.second)
|
|
return view
|
|
}
|
|
|
|
override fun registerDataSetObserver(observer: DataSetObserver?) {}
|
|
override fun getItemViewType(position: Int): Int = 0
|
|
override fun getViewTypeCount(): Int = 1
|
|
override fun isEnabled(position: Int): Boolean = true
|
|
override fun getItemId(position: Int): Long = position.toLong()
|
|
override fun hasStableIds(): Boolean = true
|
|
override fun areAllItemsEnabled(): Boolean = true
|
|
override fun unregisterDataSetObserver(observer: DataSetObserver?) {}
|
|
override fun getCount(): Int = tagTriples.size
|
|
override fun getItem(position: Int): Any = tagTriples[position]
|
|
} |