我正在构建一个天气 iPhone 应用程序。我正在使用一个 API,它可以用英语给出响应。现在我想做的是将回应翻译成德语。这有可能吗?我已经翻译了时间和工作日,如下所示:
- (id)init {
if (self = [super init]) {
_hourlyFormatter = [[NSDateFormatter alloc] init];
_hourlyFormatter.dateFormat = @"h a";
_hourlyFormatter.locale=[[NSLocale alloc] initWithLocaleIdentifier:@"de_DE"] ;
_dailyFormatter = [[NSDateFormatter alloc] init];
_dailyFormatter.dateFormat = @"EEEE";
_dailyFormatter.locale=[[NSLocale alloc] initWithLocaleIdentifier:@"de_DE"] ;
}
return self;
}
啊,界面完全基于代码,因此如果需要的话,不需要界面文件(我不这么认为,但你永远不知道,嗯?)
所以就我而言,我想翻译条件。例如晴天或雨天。
你可以跟我说一下吗?我使用的 API 是 openweathermap.org 的 API。
如果您希望应用程序自动翻译文本,系统不支持,但您可以使用一些 API:
另一个选择是使用 NSLocalizedString 自己翻译文本。 在代码中你可以有类似的东西:
newString = NSLocalizedString(originalString, nil);
NSLocalizedString 将在 .strings 文件中搜索该字符串的翻译。
为此,您必须创建并填充 .strings 文件。然后,您需要选择项目所需的语言,并本地化(翻译)该 .strings 文件。
这是一个关于如何执行此操作的很好的教程(您只需要第一部分): http://www.raywenderlich.com/2876/localization-tutorial-for-ios
之后,如果您的设备是德语,则文本也会以德语显示。如果需要,您可以轻松添加其他语言。