English 中文(简体)
困难/特殊环境下的多语言iApp
原标题:Multilingual iApp in a difficult/special environment

有很多教程告诉你如何为iPhone编写多语言应用程序。虽然我还没有找到一个能解决我特殊问题的。。。

如果用户在运行iPhone时不使用应用程序支持的任何一种语言,那么iPhone应用程序必须有办法强制使用特定的默认语言?

在瑞士,我们讲德语、法语和意大利语(在该国不同地区)。德语可以被视为“默认”语言,因为它的份额接近65%。因此,任何一家全国性零售商都有这三种语言的产品描述。我们构建了一个支持这三种语言的iApp。

到目前为止还不错。。。只要用户在iPhone设置中选择了这三种语言中的任何一种,一切都会按预期进行。对于用英语使用iPhone的用户来说,这似乎是一个很大的数字,这是错误的,因为应用程序显示的是法语而不是德语(假定的默认语言)。

为什么?因为默认情况下,法语在iPhone设置中的可用语言列表中排名高于德语。用户的解决方法是将iPhone从英语切换到德语,然后再切换回来。iPhone将德语列为可用语言的第二位。

应用程序应该如何最好地处理这一问题?啊,当然我们可以支持英文的UI元素,但我们的客户的产品描述根本没有英文。因此,这并不是一个真正的选择。

最佳回答

你可以让用户选择在应用程序中使用哪种语言,并设置如下:

NSArray *lang = [NSArray arrayWithObjects:@"de", nil];
[[NSUserDefaults standardUserDefaults] setObject:lang forKey:@"AppleLanguages"];
问题回答

不久前我也遇到了同样的问题。我的解决方法是以编程方式设置所有可本地化元素,而完全不依赖iOS本地化。我实现了自己的语言管理器,它处理本地化字符串(从自定义资源文件中读取),并尝试为当前设备选择最佳语言(使用自定义首选项文件中提供的规则)。当然,如果设备的当前首选语言在本地化中可用,则它具有最高优先级。我还留下了一个机会来改变设置中的语言。





相关问题
List Contents of Directory in a UITableView

I am trying to list the contents of Ringtones directory in a TableView, however, I am only getting the last file in the directory in ALL cells, instead of file per cell. This is my code: - (...

iPhone NSUserDefaults persistance difficulty

In my app i have a bunch of data i store in the NSUserdefaults. This information consists of an NSObject (Object1) with NSStrings and NSNumbers and also 2 instances of yet another object (Object2). ...

Writing a masked image to disk as a PNG file

Basically I m downloading images off of a webserver and then caching them to the disk, but before I do so I want to mask them. I m using the masking code everyone seems to point at which can be found ...

Resize UIImage with aspect ratio?

I m using this code to resize an image on the iPhone: CGRect screenRect = CGRectMake(0, 0, 320.0, 480.0); UIGraphicsBeginImageContext(screenRect.size); [value drawInRect:screenRect blendMode:...

Allowing interaction with a UIView under another UIView

Is there a simple way of allowing interaction with a button in a UIView that lies under another UIView - where there are no actual objects from the top UIView on top of the button? For instance, ...

热门标签