我是iOS新手,我制作了一个包含语言翻译功能的应用程序,所以我使用Bing API,并使用Github的FGTranslator。
但它将法语翻译成英语,但我想向用户做出选择,因为用户可以选择French
、Spanish
等语言,然后如何将语言从英语转换为西班牙语形式的FGTranslator请给我解决方案。
这里FGTranslator
语言转换器方法看起来像
[self.translator translateText:@"Helo How are You"
completion:^(NSError *error, NSString *translated, NSString *sourceLanguage)
{
if (error)
{
[self showErrorWithError:error];
[SVProgressHUD dismiss];
}
else
{
NSString *fromLanguage = [[self currentLocale] displayNameForKey:NSLocaleIdentifier value:sourceLanguage];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:fromLanguage ? [NSString stringWithFormat:@"from %@", fromLanguage] : nil
message:translated
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
NSLog(@"STERING %@",translated);
[SVProgressHUD dismiss];
}
}];
以下是我如何从用户选择中设置不同的语言。
在这里我为它写了一个方法,然后我得到了类似FGTranslatorErrorDomainerror 1
的错误。请帮帮我我写了一个类似的方法
[self.translator translateText:self.textView.text withSource:@"en" target:@"js" completion:^(NSError *error, NSString *translated, NSString *sourceLanguage) {
if (error)
{
[self showErrorWithError:error];
[SVProgressHUD dismiss];
}
else
{
NSLog(@"Translated Text %@",translated);
}
}];
在这里我写英语的en
和日语的js
请帮我
您似乎使用了错误的翻译名称。方法supportedLanguages:
返回English
、French
等语言,但您使用的是en
和fr
来翻译它们。
所以这应该有效:
[self.translator translateText:self.textView.text withSource:@"English" target:@"French" completion:^(NSError *error, NSString *translated, NSString *sourceLanguage) { /* ... */ }];