【问题标题】:Localization in Xamarin IOSXamarin IOS 中的本地化
【发布时间】:2021-09-16 09:22:00
【问题描述】:

我目前正在 Xamarin.IOS 中体验本地化。我设法完成了本地化工作,但仅基于系统语言。这是我的例子:

someLabel.Text = NSBundle.MainBundle.GetLocalizedString ("Hello");

问题是如何通过代码更改应用内的本地化?谁能举个例子?

【问题讨论】:

    标签: c# xcode xamarin xamarin.ios localization


    【解决方案1】:

    如果要实现本地化,可以在Resources文件下创建.lproj文件夹,然后在Xcode中选择本地化选择语言,Visual Studio中会相应生成相应的字符串。当使用 NSBundle.MainBundle.GetLocalizedString ("Yes");请确保 Localizable.strings 文件存在于您的 .lproj 文件夹中。

    【讨论】:

    • 感谢您的回答。这是我尝试过的:我在 Visual Studio 的 Resources 文件下创建了 .lproj 文件夹,然后进入 Xcode 创建了一个 .strings 文件。然后我用多种语言对其进行了本地化,并添加了我需要的字符串。返回 Visual Studio 时,会生成文件。但是,NSBundle.MainBundle.GetLocalizedString()still 不起作用,给我输入参数作为输出。
    • 您可以在Xcode中选择Localization选项,会自动创建相应的文件
    • 是的,我确实在Xcode中选择了Localization选项,并生成了相应的文件。
    • 你是否按照官方文档创建了Base.lproj文件夹并将Main.storyboard文件放入其中,并确保你的lproj文件夹有Localizable.strings并且必须用这个名字来调用
    • 当手机系统语言发生变化时,会自动到.lproj文件中查找对应的.strings
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-20
    • 1970-01-01
    • 2020-12-20
    • 1970-01-01
    相关资源
    最近更新 更多