问题标签 [localizable.strings]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3243 浏览

ios - iOS 在运行时更改 Localizable.strings

我希望能够在运行时更新本地化字符串文件,但不可能

我想过这个:我的应用程序使用网络服务。所以我可以有一个返回 .strings 文件的 Web 服务,并且该文件将保存在应用程序目录中。

现在的问题是:如何更改 NSLocalizedString 以从我的文件中读取?是否可以?

该应用程序不适用于苹果商店,因此如果苹果不同意更改应用程序语言,这不是问题。

0 投票
1 回答
508 浏览

xcode - 如何对 Mac OS X 语言本地化文件进行逆向工程以进行自然语言学习?

好的,这个问题的目标不是严格的编程相关,而是程序员可以使用编程工具回答的问题,程序员可以在这里找到有用的答案。忍受我。

我发现在 Mac OS X 中更改系统语言是增强我学习自然语言(例如法语)的有用方法。但是,有时我会发现一个我无法理解的法语菜单项或对话框,并且用谷歌搜索翻译或将系统语言更改回英语很无聊。但我知道英文翻译隐藏在本地化文件的某个地方,并以某种方式映射到法语短语。所以我想要做的是从所有本地化文件中提取所有文本,以开发英语这个短语 = 法语那个短语的映射,这样我就可以轻松查找它。

我知道本地化文件存储在诸如 Localizable.strings、lproj 文件和 nib 文件之类的文件中,但我无法确定它们的存储方式或如何使用它们。我可以编程,但我从来没有用 Xcode 写过任何东西。我能找到的所有信息都是供 Mac OS / iOS 程序员本地化他们的软件,而不是让黑客提取已经制作的本地化信息。

如何从 Mac OS X 系统和第 3 方软件本地化文件中将外语信息提取为纯文本?谢谢!

0 投票
3 回答
1690 浏览

ios - 本地化后备语言

我想在我的 iPhone 应用程序中本地化几个字符串,到目前为止它适用于我选择的 5 种语言。但是,我有一个问题,如果我没有为特定语言定义一个键,我希望它选择英语作为后备,因为我知道我已经用英语定义了每个字符串。问题是,所有键都被翻译并不是很重要,例如,即使 iPhone 设置为西班牙语,也可以显示英文。

例子:

zh:

埃斯:

预期结果:

如果 iPhone 设置为英语,我希望它说:hello, my friend如果语言设置为西班牙语,我希望它说hola, my friend。目前该应用程序将输出hola, PERSON. (我使用 NSLocalizedString 方法)。

可能有一个非常简单的解决方案,但我找不到任何好的解决方案。谢谢您的帮助,

马蒂亚斯

0 投票
1 回答
849 浏览

android - 如何以编程方式访问 Android 操作系统的私有字符串?

背景

我想以编程方式获取 Android 操作系统的所有字符串(包括所有字符串),包括那些被认为是私有的字符串。

例如,我想获得 packageManager 应用程序的那些,如此所示。

问题

使用 android.R.string 只返回一小部分字符串。

我试过的

我找到了这个链接,它显示了下一个代码,但我不确定要在参数中添加什么:

过去我见过一些应用程序可以列出其他应用程序的各种资源,包括系统本身的资源(示例here)。

后来我发现了如何从您希望的任何应用程序中获取字符串,但它假设您知道标识符的名称,并且不让您列出它们:

例如,如果要获取“more”的字符串(key为“more_item_label”),可以使用:

问题

这样的事情可能吗?如果没有,是否可以使用root来完成?

0 投票
1 回答
1393 浏览

ios - 如何为键设置 iOS 默认可本地化字符串?

Localizable.strings用 2 种语言 en & jp 创建了一个文件。

zh:"key"="english";

J.P:"key"="日本";

使用 en & jp 时效果很好。

但是当我使用其他语言(如德语)时,标签将显示key在视图中。我想显示en字符串值默认值的键。

en当用户使用没有 en & jp 的其他语言时如何设置加载?

0 投票
3 回答
2939 浏览

ios - ios 可本地化的字符串不起作用

我制作了一个本地化为两种语言(英语和丹麦语,默认为英语)的 ios 应用程序。
我制作了一个带有两个子文件 en 和 da 的 Localizable.strings。
一切都应该正确,我看到从字符串文件中加载英文文本很好。但丹麦人没有。

我试图通过下面的代码检查首选语言,它是丹麦语。

我试过清理 + 删除和重建,但没有运气。

我知道 Localizable.strings 文件正在工作,因为它正在获取英文文本。我知道它通过上面的代码行看到了丹麦本地化。我错过了什么?

只是添加几个例子:
来自EN:

和丹麦人:

获取文本的代码是:

即使preferredLang是da(丹麦语),它也会返回“Done”!

希望有人有想法?:)

提前致谢。

编辑:::
实际的丹麦-丹麦本地化出了点问题。我不知道苹果是否更新了它或他们做了什么,但它从被称为“丹麦-丹麦”变成了“丹麦”。在制作了全新的丹麦语本地化并删除了旧的本地化后,它起作用了!疯狂的事情。让你摸不着头脑!

0 投票
1 回答
330 浏览

ios - 是否可以在 Xcode 中为字符串文件创建类似结构的继承?

我有一个应用程序,它根据目标具有不同的字符串集。是否可以有一个基本字符串文件,然后只覆盖另一个中的几个键?

例如,如果我的基本文件是这样的:

然后对于我的一个目标,关联另一个具有以下内容的字符串文件:

因此,如果我运行包含附加字符串文件的目标,输出将是:

我非常希望不要在覆盖字符串文件中抛出未修改的字符串。任何帮助将不胜感激。

0 投票
1 回答
939 浏览

ios - iOS 是否查找特定区域的 .lproj 目录(例如 en_US.lproj)?

根据官方文档Internationalization Programming Topics

如果您的 Mac 应用程序具有针对美国、英国和澳大利亚用户的本地化版本,则捆绑例程将首先搜索相应的区域目录(en_US.lproj、en_GB.lproj 或 en_AU.lproj),然后是 en.lproj 目录。iPhone 上的相同应用程序只会在 en.lproj 目录中查找。

但是我尝试将我的 Localizable.strings 放在 en_US.lproj 目录中,而不是en.lproj 中,我仍然可以使用NSLocalizedString()函数找到英文字符串。

有什么问题?

0 投票
4 回答
12725 浏览

xcode - 在 localizable.strings 中添加“换行符”

如何在中添加换行符localizable.strings

我试过把\n,但没有成功。

0 投票
2 回答
403 浏览

java - 在 strings.xml 中本地化字符串会产生 NullPointerException

由于与工作相关的问题,我安装了 Eclipse 的工作计算机没有互联网连接,因此所有代码和 LogCat 文本都是手动输入的,而不是复制和粘贴,因为我现在安装了 Eclipse 的单独笔记本电脑上。所以请容忍我的任何错别字。

现在到了这个问题。在我的应用程序的新版本中,我使其支持西班牙语。我将所有字符串本地化为strings.xml. 下面是我没有用来实现的 Java 代码。

如果我理解localization正确,我必须首先 getResources() 以便应用程序知道要显示的字符串的语言。但是 getResources() 让我很困惑。

我需要做什么才能正确显示字符串?