RALocalize
用 Swift 编写的 iOS 实时本地化框架
使用示例
import UIKit
import RALocalize
class ViewController: UIViewController {
@IBOutlet private weak var label: LocalizableLabel!
@IBOutlet private weak var button: LocalizableButton!
@IBAction private func changeLanguageButtonAction(_ sender: Any) {
let alertController = UIAlertController(title: "change_language".localized, message: nil, preferredStyle: .actionSheet)
RALocalize.availableLanguages.forEach { language in
alertController.addAction(UIAlertAction(title: language.name, style: .default, handler: { (_) in
RALocalize.changeLanguage(language: language)
}))
}
present(alertController, animated: true, completion: nil)
}
}
特性
实现了 LocalizableLabel、LocalizableButton 和 LocalizableTextField(仅对占位符有效)类
使用
将您的翻译文件名设置为 'Localizable.strings',然后使用 '.localized' 扩展名。
从应用程序设置中可以更改应用程序的语言(从 iOS 13 开始)。
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Check if language changed from settings
RALocalize.checkForLanguageChange()
return true
}
获取可用语言使用
RALocalize.availableLanguages
获取当前语言使用
RALocalize.currentLanguage
更改语言使用
RALocalize.changeLanguage(languageCode: String)
或者
RALocalize.changeLanguage(language: RALanguage)
安装
使用 Cocoapod
target 'MyApp' do
pod 'RALocalize'
end