Android - обязательные свойства на основе типа - PullRequest
0 голосов
/ 30 апреля 2019

Я использую kotlin для разработки под Android, у меня есть класс данных, например, Vehicle, и будет три поля vehicleType, MotorCycle и Bus, когда я установлю vehicleType как twoWheeler он должен показывать MotorCycle как обязательный, и когда я устанавливаю Bus как vehicleType во время компиляции, он должен показывать мне Bus поле как обязательное (например, аннотации)
Пример

data class Vehicle(val type : vehicleType, val motorCycle : Any, val bus : Any ){

    companion object{
      const val TWO_WHEEL = 0
      const val FOUR_WHEEL = 1
  }

}

Если я создаю класс данных Vehicle для типа TWO_WHEEL, он должен показывать motorCycle как обязательный во время компиляции
Есть ли какое-либо специальное решение для этого?
Любая помощь

1 Ответ

1 голос
/ 30 апреля 2019
sealed class Vehicle
data class TwoWheel(val motorCycle: Any) : Vehicle()
data class FourWheel(val bus: Any) : Vehicle()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...