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 }