我的问题与以下问题有关,可以说几乎相同。根据用户输入显示不同语言的iPhone键盘
Setting the iPhone keyboard language
但这里是我的要求。我正在为支持多种语言的iPhone编写字典应用程序。所以我的要求是当用户选择英文时显示英文键盘,当用户选择荷兰文时显示荷兰文键盘等等。
所以我想知道这是否可能?
我有一个预感,如果我“国际化”的笔尖,它会显示各自的键盘,但不知道。
谢谢。
我的问题与以下问题有关,可以说几乎相同。根据用户输入显示不同语言的iPhone键盘
Setting the iPhone keyboard language
但这里是我的要求。我正在为支持多种语言的iPhone编写字典应用程序。所以我的要求是当用户选择英文时显示英文键盘,当用户选择荷兰文时显示荷兰文键盘等等。
所以我想知道这是否可能?
我有一个预感,如果我“国际化”的笔尖,它会显示各自的键盘,但不知道。
谢谢。
不幸的是,您无法控制键盘的语言。用户通过设置应用程序选择他们想要的键盘,并且可以使用键盘上的地球图标在它们之间切换。当键盘打开时,它将打开最近使用的键盘。
但也许当前键盘的语言存储到用户默认? – 2012-12-08 12:56:18
这篇文章解释了开发人员需要为了使用本地化的字符串 http://www.iphonesdkarticles.com/2008/11/localizing-iphone-apps.html
基本上你创建的语言本地化的字符串,以创建国际化的应用程序做你想要支持:
//Localizable.String file for the English version.
"WelcomeKey" = "Welcome!!!";
//Localizable.strings file for the Italian version.
"WelcomeKey" = "Benvenuto!!!";
然后在应用程序中使用它们:
- (void)applicationDidFinishLaunching:(UIApplication *)application {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *languages = [defaults objectForKey:@"AppleLanguages"];
NSString *currentLanguage = [languages objectAtIndex:0];
NSLog(@"Current Locale: %@", [[NSLocale currentLocale] localeIdentifier]);
NSLog(@"Current language: %@", currentLanguage);
NSLog(@"Welcome Text: %@", NSLocalizedString(@"WelcomeKey", @""));
// Override point for customization after application launch
[window makeKeyAndVisible];
}
用户可以更改键盘的语言设置 - >常规 - >国际
它不能解决问题。首先,用户不能像字典那样轻松切换。其次,它不会改变你的键盘 – vodkhang 2010-06-14 02:12:40
那么问题是关于键盘,而不是本地化。 – itsaboutcode 2010-06-14 06:34:36
@itsaboutcode,有趣的是,您的用户名与代码有关。 – 2015-10-22 16:14:10
我已经创建了几个自定义的iOS键盘,它可以很好地工作,你可能最终想走那条路线 – 2010-06-14 19:12:20
@Cirrostratus 我认为你是对的,看起来没有其他办法。谢谢 – itsaboutcode 2010-06-15 15:55:24