Как сделать динамическую локализацию строк от листа Excel в приложение в iOS SwiftuiIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Как сделать динамическую локализацию строк от листа Excel в приложение в iOS Swiftui

Сообщение Anonymous »

Я хочу реализовать динамическую локализацию в моем приложении Swiftui. Вместо того, чтобы использовать встроенные файлы Localizable.strings, я сохранил все свои локализованные строки в листе Excel (загруженные на Google Sheets). />https://docs.google.com/spreadsheets/d/ ... sharingbr/> Как я могу извлекать данные локализации из лишнего листа. /> Пожалуйста, направляйте меня и предоставьте любую документацию или фрагменты кода для этого. < /Strong> < /p>
Я использовал следующий код для локализации с локализацией.Text("schoolCode_title".localized())
Text("schoolCode_findyourSchool".localized())

extension String {
func localized() -> String {
LanguageManager.shared.localizedString(forKey: self)
}
}

class LanguageManager: ObservableObject {
static let shared = LanguageManager()

static func initializeManager() {

_ = LanguageManager.shared
}

@Published var currentLanguage: String {
didSet {
UserDefaults.standard.set(currentLanguage, forKey: "AppLanguage")
updateBundle()
}
}

var bundle: Bundle = .main

private init() {
currentLanguage = UserDefaults.standard.string(forKey: "AppLanguage") ?? "en"
updateBundle()
}

func setLanguage(_ language: String) {
guard currentLanguage != language else { return }
currentLanguage = language
}
func toggleLanguage() {
currentLanguage = (currentLanguage == "en") ? "hi" : "en"
}
private func updateBundle() {
if let path = Bundle.main.path(forResource: currentLanguage, ofType: "lproj"),
let langBundle = Bundle(path: path) {
self.bundle = langBundle
} else {
self.bundle = .main
}
}

func localizedString(forKey key: String) -> String {
bundle.localizedString(forKey: key, value: nil, table: nil)
}
}


Подробнее здесь: https://stackoverflow.com/questions/795 ... os-swiftui
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»