Как получить доступ к значениям перечисления в Kotlin

Я пытаюсь перебрать перечисление, но не могу получить доступ ни к каким значениям, с которыми они были установлены. Android Studio видит только имя и порядковый номер, но больше ничего.

Я не уверен, что это проблема студии Android, поскольку другие онлайн-учебники для перечислений kotlin, кажется, делают то, что я делаю, и работают просто отлично.

    enum class TimeStamps(value : Long, text : String) {
        Hour(0, "Past Hour"),
        Day(3600000, "Today"),
        Yesterday(86400000, "Yesterday"),
        Week(172800000, "This week"),
        LastWeek(604800000, "Last week"),
        LastMonth(1209600000, "Last month"),
        LastYear(2628000000, "Last year"),
        LongTime(31540000000, "A long time ago")
    }


TimeStamps.LastMonth.value
TimeStamps.LastMonth.text  //Both of these are said to be undefined by Android Studio

enumValues<TimeStamps>().forEach {

            it.value //Also undefined
}

Я не совсем уверен, что происходит. Единственное сообщение об ошибке, которое я получаю, это ошибка Unresolved Reference. Любая помощь приветствуется, спасибо!

1
0
935
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам нужно использовать val, если вы хотите, чтобы это было свойство:

enum class TimeStamps(val value: Long, val text: String) {
    ...
}

Другие вопросы по теме