Я борюсь с локализацией некоторых моих текстовых полей. Обычно «нормальная» локализация Text () или TextField () работает без проблем в моем приложении, если текст, который я хочу перевести, жестко запрограммирован следующим образом:
Text("English Text")
Я перевожу его в моем Localizable. такие строки:
"English Text" = "German Text";
Теперь я хочу перевести текстовые поля, которые более динамичны c, но где я знаю каждую возможную запись:
TextField("New note" + (refresh ? "" : " "),text: $newToDo, onCommit: {
self.addToDo()
self.refresh.toggle()
})
(refre sh необходимо из-за ошибки SwiftUI, иногда не отображающей текст-заполнитель снова.)
Другой пример:
func dayWord() -> String {
let dateFormatter = DateFormatter()
dateFormatter.timeZone = TimeZone.current
dateFormatter.locale = Locale(identifier: "de_DE")
dateFormatter.dateFormat = "EEEE"
return dateFormatter.string(from: self)
}
var day: String {
return data.date.dateFromMilliseconds().dayWord()
}
Text(day.prefix(2))
Текст (day.prefix (2)) имеет только семь возможные состояния, но я не знаю, что написать в качестве ключа в моих Localizable.strings.