Как создать ссылку из перечисления с константами на перечисление с падежами типа String

#ios #swift

#iOS #swift

Вопрос:

У меня есть 2 перечисления.

Первое перечисление содержит константы:

 enum Constants {

static let settings = "settings"
static let help = "Help"
}
  

Второе перечисление имеет тип String и содержит несколько падежей:

 enum SettingsName: String {
    case Settings = "Settings"
    case Help = "Help"
}
  

Как я могу связать строку из перечисления Constants с моим вторым перечислением?
Я пробовал case Settings = Constants.settings , но не работает.

Комментарии:

1. Вы можете определить свои константы как static let settings = SettingsName.Settings.rawValue , другой способ не сработает, потому что исходное значение для регистра должно быть литералом

Ответ №1:

Вы не можете. Исходное значение регистра должно быть литералом.

Комментарии:

1. Тогда есть ли шанс удалить «красный код» с моего контроллера? Я хочу, чтобы мой код выглядел чистым и симпатичным.

2. Вы можете написать enum SettingsName: String { case Settings, Help } , исходное значение равно регистру. Однако регистр перечисления должен называться в нижнем регистре.

3. @FlorentinLupascu вы можете изменить цвет строк в настройках Xcode 😏