У меня есть следующий класс emun для представления моих представлений панели навигации.
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);
}
В настоящее время я использую следующий метод для обратного поиска по позиции
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Есть ли более простой способ рефакторинга getByPosition
с использованием лямбда-выражения Kotlin или функции расширения?