Localize-Swift 是一个简单的用于 Swift 应用的国际化和本地化框架,提供了清晰的语法和应用内的多语言切换。
可保留你应用内已经使用的 Localizable.strings 文件
允许用户直接修改应用的语言而无需更改设备语言
使用 .Localized() 替代 NSLocalizedString(key,comment) - 更具 Swifty 语法风格
通过新的 python 脚本 genstrings 来生成你的字符串,可识别 .Localized().
在每个 Swift 文件中引入 Localize 用来包含本地化的文本
If Carthage -
import Localize
If CocoaPods -
import Localize_Swift
Add .Localized() following any String object you want translated:
textLabel.text = "Hello World".Localized()
To get an array of available localizations:
Localize.availableLanguages()
To change the current language:
Localize.setCurrentLanguage("fr")
To update the UI in the viewcontroller where a language change can take place, observe LCLLanguageChangeNotification :
NSNotificationCenter.defaultCenter().addObserver(self, selector: "setText", name: LCLLanguageChangeNotification, object: nil)
To reset back to the default app language:
Localize.resetCurrentLanaguageToDefault()
写在前面 本文同步 个人博客 简书 慕课 使用Xcode 9.3 Swift4.1 前言 语言本地化 大家肯定都多少都听过,今天我要分享的是快速实现语言本地化,与App内语言切换 核心内容主要是三个部分 storyboard/xib本地化 纯代码本地化 语言切换 准备工作 项目中添加语言 storyboard/xib本地化 storyboard/xib做本地化Xcode基本上是一键搞定了。 很简单
Swift 语言指南-Issue 45 本期特别推荐 1. 项目:Localize-Swift(国际化及本地化字符串框架库),AudioKit(音频合成、加工及分析平台框架库)以及 swift-algorithm-club(Swift 算法俱乐部学习库);2. 文档:用 Swift 中的单向数据流来替代臃肿的视图控制器 和 Swift中的7个陷阱与如何避免它们 大声:Kingfisher 2.0
字符串和字符 A string is an ordered collection of characters, such as "hello, world" or "albatross". Swift strings are represented by the String type, which in turn represents a collection of values of Char
Embed 功能 SwiftUI 可以将一个或多个 View 外部再包裹一层 View 。在某个 SwiftUI View 上右键,Show Code Actions (快捷键 command+shift+左键),选择 Embed in HStack/VStack/ZStack/Group/Button/List(Xcode 13)。 VStack 背景色 修改背景色用 background 修饰
看过其他人写的的脚本后发现有些问题,其他人会把Localizable.strings中的value值传入NSLocalizedString,实际上这是不对的,按理应该传入key值,针对这个问题进行了修改。 # Localizable.strings文件路径 localizableFile="${SRCROOT}/${PROJECT_NAME}/en.lproj/Localizable.string
Django 提供了一种健壮的国际化和本地化框架来帮助你实现多种语言和世界区域范围的开发。
为了适应经济的全球一体化,作为开发者,我们需要开发出支持多国语言、国际化的Web应用,即同样的页面在不同的语言环境下需要显示不同的效果,也就是说应用程序在运行时能够根据请求所来自的地域与语言的不同而显示不同的用户界面。这样,当需要在应用程序中添加对新的语言的支持时,无需修改应用程序的代码,只需要增加语言包即可实现。 国际化与本地化(Internationalization and localiza
今天的文章的主题是国际化和本地化,通常简称 I18n 和 L10n。我们想要我们的 microblog 应用程序被尽可能多的用户使用,因为我们不能忘记有许多人是不是讲英文的,或者会说英文,但是更愿意讲本国语言。 为了使得我们的应用程序便于外国访问者,我们将要使用 Flask-Babel 扩展,它提供了一种简单使用的框架用来把应用程序翻译成不用的应用。 如果你还没有安装 Flask-Babel,现在
主要内容:1. 工程结构,2. Properties文件,3. 动作类,4. 视图页面,5. 显示资源包的消息?,6. struts.xml,7. 示例,参考Struts 2的国际化(I18N)和本地化(i10n)或多语言的例子,来说明如何使用资源包来显示不同语言的消息。在这个例子中,您将创建一个简单的登录屏幕,通过Struts 2的UI组件显示来自资源包的消息, 并更改基于所选的语言选项的语言环境。 1. 工程结构 项目结构,如下图片显示: 2. Properties文件 确保属性文件命名为国
本文翻译自The Flask Mega-Tutorial Part XIII: I18n and L10n 这是Flask Mega-Tutorial系列的第十三部分,我将告诉你如何扩展Microblog应用以支持多种语言。 作为其中的一部分,你还将学习如何为flask命令创建自己的CLI扩展。 本章的主题是国际化和本地化,通常缩写为I18n和L10n。 为了使我的应用对不会英语的人更加友好,我将
主要内容:资源包:,访问消息:,Localization 例子:国际化(i18n)是规划和实施的产品和服务,使他们能很容易地适应特定的本地语言和文化的过程中,这个过程被称为本地化。国际化的过程有时也被称为翻译或本地化启用。国际化是缩写i18n,因为我和两端用n字打头,并有18个字符之间的第i个和最后n。 Struts2提供本地化,即,国际化(i18n)支持,通过资源包,拦截器和标签库在以下地方: UI 标签 消息和错误 动作类 资源包: Struts2 使用资
Disclaimer for newcomers: i18n and l10n are numeronyms, a kind of abbreviation where numbers are used to shorten words - in our case, internationalization becomes i18n and localization, l10n. 首先,我们需要为
国际化是指在某个国家或地区使用的软件将以本地的语言和习惯显示软件中的信息。国际化的英文单词是internationalization,由于这个英文单词太长,因此,国际化也可以写成i18n,其中“i”和“n”分别是internationalization的首字母和尾字母,而“18”表示在“i”和“n”之间共有18个英文字母。由于国际化的实质就是按着本地用户的语言和习惯显示软件中的信息,因此,国际化也