#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 😏