• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package leakcanary.internal.activity.ui
2 
3 import android.view.View
4 import android.view.ViewGroup
5 import android.widget.BaseAdapter
6 import leakcanary.internal.navigation.inflate
7 
8 internal class SimpleListAdapter<T>(
9   private val rowResId: Int,
10   private val items: List<T>,
11   private val bindView: SimpleListAdapter<T>.(View, Int) -> Unit
12 ) : BaseAdapter() {
getViewnull13   override fun getView(
14     position: Int,
15     convertView: View?,
16     parent: ViewGroup
17   ): View {
18     val view = convertView ?: parent.inflate(rowResId)
19     bindView(view, position)
20     return view
21   }
22 
getItemnull23   override fun getItem(position: Int) = items[position]
24 
25   override fun getItemId(position: Int) = position.toLong()
26 
27   override fun getCount() = items.size
28 }