如何获取当前应用程序区域设置?

2024-03-09

我需要获取当前区域设置。不是用户区域设置,而是我的应用程序区域设置。

假设我的应用程序有两种本地化(在项目设置中):英语(默认)和法语。如果用户在 iPhone 上设置法语,那么我的应用程序将显示法语界面。如果用户在 iPhone 上设置德语,那么我的应用程序将显示英语界面(因为默认为英语)。

那么如何获取当前显示的应用程序区域设置呢? 提前致谢。


可能有比这更简单的方法(请参阅其他答案),但这是最强大的,并且只要通过本地化应用程序的一般原则strings-file 不会过时,此方法将起作用。

一般来说,您不需要获取应用程序区域设置(但请继续阅读,这是可能的!)如果您想要本地化文本,您可以使用NSLocalizedString()。如果您需要本地化图像,则可以使用本地化资源,等等。然而,我能想到的一些原因使得获得“应用程序区域设置”(正如您所说的那样)会很好:例如用于分析(您想知道您的应用程序使用哪种语言),或者用于提供如果您使用基于服务器的通信,则为用户提供一致的一种语言界面(例如,以用户在应用程序内看到的相同语言本地化服务器错误消息。)

如果您想获取当前可见的应用程序的本地化,我想您有一个Localizable.strings每个受支持的语言环境的文件。因此,在英语字符串文件中,您可以添加以下行

"lang" = "en";

并在法语字符串文件中添加以下行

"lang" = "fr";

然后,您始终可以通过调用获取应用程序区域设置NSLocalizedString("lang")(迅速)或NSLocalizedString(@"lang")(目标-C)。当然,每当您向应用程序添加新的本地化时,您都必须在新的本地化字符串文件中设置一个“lang”条目。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取当前应用程序区域设置? 的相关文章

随机推荐