0

在 iphone sdk 3.0 中,他们提供了国际键盘选项。用户可以选择他想要的键盘。但是我们如何本地化我们的应用程序。例如,如果用户选择了法语键盘,我们应该用法语与他互动。像警报和其他东西应该以法语显示。

我们如何以编程方式做到这一点?他们是否有任何选项可以将字符串从英语转换为用户选择的语言?

请帮助我

4

3 回答 3

3

查看 iPhone 开发中心的国际化编程主题

于 2010-06-08T08:42:55.020 回答
2

没有记录的方法可以知道键盘何时更改,也没有记录的方法可以获取当前的键盘模式。


使用未记录的 API,您可以收听UIKeyboardCurrentInputModeDidChangeNotification本地通知。

当前输入模式可以从com.apple.Preferences首选项中找到,使用

return CFPreferencesCopyAppValue(CFSTR("KeyboardLastUsed"),
        CFSTR("/var/mobile/Library/Preferences/com.apple.Preferences"));

(注意:要在模拟器上进行测试,您需要替换/var/mobile//Users/<user-name>/Library/Application Support/iPhone Simulator/<sdk-version>/。)

于 2010-06-08T08:45:00.797 回答
2

在 iOS 4.2 及更高版本中,您可以使用UITextInputMode该类来确定当前用于文本输入的主要语​​言。

[UITextInputMode currentInputMode].primaryLanguage将为您提供NSString代表 BCP 47 的语言代码,例如“es”、“en-US”或“fr-CA”。

您可以注册以UITextInputCurrentInputModeDidChangeNotification在当前输入模式更改时收到警报。

正如 Thomas Müller 所说,国际化编程主题是一个很好的起点。

您可能还对“让您的应用程序为中国和其他热门新市场做好准备” WWDC 会议感兴趣。

于 2012-02-21T22:00:58.973 回答