gildor
08/23/2018, 10:22 AMAyden
08/23/2018, 11:06 AMgildor
08/23/2018, 11:08 AMAyden
08/23/2018, 11:08 AMgildor
08/23/2018, 11:10 AMinline fun TabLayout.setOnTabSelectListener(crossinline listener: (position: Int, reselect: Bool) -> Unit) {
setOnTabSelectListener(object : OnTabSelectListener {
override fun onTabSelect(position: Int) {
listener(position. false)
}
override fun onTabReselect(position: Int) {
listener(position. true)
}
})
}
Usage:
tabLayout.setOnTabSelectListener { position, reselect ->
println("selected $position reselect $reselect")
}
inline fun TabLayout.setOnTabSelectListener(
crossinline onSelect: ((Int) -> Unit)? = null,
crossinline onReselect: ((Int) -> Unit)? = null
) {
setOnTabSelectListener(object : OnTabSelectListener {
override fun onTabSelect(position: Int) {
onSelect?.invoke(position)
}
override fun onTabReselect(position: Int) {
onReselect?.invoke(position)
}
})
}
tabLayout.setOnTabSelectListener(onSelect = { println("selected") })
Ayden
08/23/2018, 12:36 PM