I have the following emun class to represent my navigation bar views.
enum class NavigationPosition(val position: Int, val id: Int) {
HOME(0, R.id.nav_home),
SEARCH(1, R.id.nav_search),
PROFILE(2, R.id.nav_profile),
SETTINGS(3, R.id.nav_settings);
}
I'm currently using the following method to do a reverse lookup by position
fun getByPosition(position: Int): NavigationPosition = when (position) {
0 -> NavigationPosition.HOME
1 -> NavigationPosition.SEARCH
2 -> NavigationPosition.PROFILE
3 -> NavigationPosition.SETTINGS
else -> NavigationPosition.HOME
}
var navigationPosition = getByPosition(position)
Is there a simpler way I can refactor getByPosition
by using a Kotlin lambda or extension function?