Tag: 本地化

如何使用存储在CocoaTouch框架中的Localizable.strings?

我想为CocoaTouch框架添加多语言支持。 问题:我创build的Localizable.strings文件只有在它是主应用程序及其目标的一部分时才被NSLocalizedString使用。 我想将其存储在框架内,以保持独立。 如何在CocoaTouch框架中使用Localizable.strings ?

在运行时更改iOS模拟器的当前区域设置

当开发一组date计算和语言规则来将数值和date转换为string时,我正在编写testing来断言string格式化方法的结果。 一个假想的断言可能看起来像这样: NSAssert([dateString isEqualToString:@"Three days, until 6:00 PM"], @"Date string should match expectation"); 但是,由于该应用程序已针对多种语言进行了本地化,而且我的开发人员也来自不同的语言环境,因此可能会发生这样的情况,即您的设备或模拟器被设置为与正在编写testing的语言环境不同的语言环境。 在这样的情况下, dateString的内容可能是这样的: @"Drie dagen, tot 18:00" // the assertion fails @"Drei Tage, bis 18 Uhr" // the assertion also fails 这可能是也可能不是这些语言环境的正确date符号,但是我的问题的一部分是如何能够运行testing到特定的语言环境,当底层代码使用Apple API如下所示: [NSDateFormatter localizedStringFromDate:date dateStyle:NSDateFormatterNoStyle timeStyle:NSDateFormatterShortStyle]; 我很想在我的断言中用两种或更多种语言来覆盖,就像这样: [NSSomething actionToSetTheLocaleTo:@"en_US"]; dateString = …; // the formatting NSAssert([dateString isEqualToString:@"Three days, until 6:00 PM"], […]

具有本地化应用名称的多个目标的本地化项目

我最近将5个独立项目合并到一个项目中,以build立一个共同的代码库。 所以现在我有一个项目有5个目标。 每个目标具有相同的文件集,除了每个目标(例如Default.png,以及其他图标文件)不同的一些文件。 我的应用程序被翻译成7种语言,默认为英文。 其他语言是:瑞典语,荷兰语,德语,法语,波兰语和西class牙语。 现在我也想根据使用的语言翻译应用程序的名称。 例如,对于我的瑞典航空应用程序,这个应用程序应该被称为“Flyget ARN”(瑞典语),但英语应该被称为“航空ARN”(Aviation ARN)。 所有这些都不是问题,因为这是在InfoPlist.string完成的,但是将其与本地化应用程序相结合是一个问题。 我最近写了这个问题: 几个本地化仍然只显示英文 ,发现我不能合并几个.strings文件。 (见我写的答案)。 所以我的问题是以下几点: 如何从包含多个目标的项目获得本地化的应用程序,并且还可以本地化我的应用程序名称,而不会产生DRY违例(重复代码)。 更新 这仍然是一个问题,给出的答案不能解决我的问题。

Asihttprequest localizedDescription总是用英文

即时通讯使用Asihttprequest为我的HTTP请求,我的应用程序将汉德3语言:阿拉伯语,法语和英语,但Asihttprequest错误localizedDescription返回总是英文说明。 是Asihttprequest请求使用默认的ios系统本地化描述? 如果是的话我怎么能本地化错误? 谢谢。

直接在应用程序中切换语言

一直在尝试将我的应用程序本地化为7种语言,但是我发现的所有教程只显示如何在单个页面上显示,而不是显示在应用程序中。 我现在在设备是该语言的本地化工作的地步,但需要有能力通过button来改变语言。 编辑:下面的代码适用于任何人寻找类似的解决scheme。 有关以下注意事项 以下代码组创build一个应用程序语言更改,包括标签栏名称。 你必须把所有的数据放在localize.strings中,因为main.strings将不能正常工作。 这意味着你将需要以编程方式添加所有“后退”,“取消”和导航标题,以及菜单项。 每个“changeToXX”函数内的NSNotificationCenter都被设置为通知tabBarViewController(或任何需要的控制器)语言已经改变。 一世 import UIKit let AppLanguageKey = "AppLanguage" let AppLanguageDefaultValue = "" var appLanguage: String { get { if let language = NSUserDefaults.standardUserDefaults().stringForKey(AppLanguageKey) { return language } else { NSUserDefaults.standardUserDefaults().setValue(AppLanguageDefaultValue, forKey: AppLanguageKey) return AppLanguageDefaultValue } } set(value) { NSUserDefaults.standardUserDefaults().setValue((value), forKey: AppLanguageKey) } } let languageChangedKey = "languageChanged" class […]

UITableViewCell + Autolayout + RTL

我将我的应用程序本地化为希伯来语,这是一种RTL语言。 每个单元格具有水平约束设置为前导/尾随在RTL语言自动反转。 最后的结果与预期完全一致,但是当滚动浏览表格视图时,UITableViewCell子视图从LTR animation到RTL,这非常奇怪。 有没有办法来防止animation的意见? 例: 在所有的WWDCvideo中也没有这个词

UILocalizedIndexedCollat​​ion仅返回英文sorting规则

我试图通过使用UILocalizedIndexedCollation获取像联系人本地化的索引。 在联系人中,当我更改语言时,索引更改为与语言匹配。 但sectionIndexTitles总是返回一个英文索引。 我已经用我创build的演示应用程序和3_SimpleIndexedTableView ,这是一个来自苹果的演示应用程序尝试这与这两个应用程序都没有本地化的索引。 我已经尝试创build一个当前语言环境的本地化文件夹(我用[[NSLocale autoupdatingCurrentLocale] localeIdentifier]来确定当前的语言环境)。 这不会影响索引。 我没有find任何相关的plist设置。 我错过了什么或UILocalizedIndexedCollation只返回一个英文的整理?

使用附加string本地化Info.plistvariables

我试图本地化应用程序的名称,同时仍然能够附加一个string取决于构buildconfiguration。 所以目前它被设置为: <key>CFBundleDisplayName</key> <string>${PRODUCT_NAME}${BUNDLE_DISPLAY_NAME_SUFFIX}</string> 该设置被定义为: 通过这种方式,我们可以为应用程序添加不同的testing版本的后缀。 问题是,当我们尝试本地化应用程序显示名称在本地化的InfoPlist.strings像这样 CFBundleDisplayName = "Localized App Name"; 我们覆盖存储在Info.plist的值,并丢失后缀字符。 有没有什么好方法呢? 我们想避免有多个Info.plist文件。

我怎样才能本地化一个标准的iOS控制?

我正在写一个具有UITableViewCellEditingStyleDelete风格的表格单元格的iPhone应用程序。 这会导致单元格在左侧显示一个带有负号的红色圆圈。 目前为止很好。 它还有一个删除button(矩形button,文本“删除”)在右侧。 我需要将文本“删除”更改为其他语言的本地化。 这个文本在哪里定义?

如何使cocoa懂得我的iPhone应用程序不是英文的?

我在一个纯粹的瑞典语的iPhone应用程序工作,它永远不会被本地化到任何其他语言。 应用程序中的所有string都是瑞典语,所以我们甚至没有Localizable.strings 。 问题是Cocoa生成的string(如Done和Edit)是英文的。 我已经尝试将Info.plist中的Localization native development region设置为Swedish ,但是这没有改变。 不应该比告诉Cocoa我的应用程序使用瑞典语更难,但显然是这样。 我也尝试了一堆其他的东西没有任何运气。 那么我需要做些什么来使cocoa本地化其string瑞典?