iOS Facebook SDK本地化

里伯·扎普塔尔

我正在尝试更改FBLoginView按钮中的文本,但到目前为止我还没有运气。我试着阅读READMEFacebookSDK,并期待在互联网。我在项目本地化部分中添加了2种语言,在每种语言的支持文件中创建了2个文件,但是我尝试在其中使用README的示例内容更改字符串(具有更改的字符串值),但是即使我更改了英语文件,我也始终获得默认的登录字符串。然后,我尝试添加一些Bundle设置并在那里更改一些文件,但是也没有运气。有人可以告诉我如何逐步实现更改Facebook字符串吗?谢谢

浮点数

更新:

此处描述的方法不再适用于最新的Facebook SDK。因此,请参考@Erik van der Neut或@Ted给出的答案,并使用SDK附带的捆绑包FacebookSDKStrings.bundle进行字符串覆盖。


到目前为止,我找到的唯一可本地化/更改Facebook字符串的方法在其FAQ中进行了描述:https : //developers.facebook.com/docs/ios/troubleshooting/

我要做的是FacebookSDKOverrides.bundle从Facebook SDK随附的Scrumptious示例项目中复制文件基本上,这只是一个包含(可以包含)不同本地化文件夹的软件包。如果要添加德语字符串,请de.lproj在捆绑包中创建一个文件夹此文件夹应包含一个文件Localizable.strings

您可以在文件中找到所有可覆盖字符串的列表FacebookSDKResources.bundle.README您可以在FacebookSDK文件夹中找到它:

FacebookSDK.framework/Resources/

或者在这里:https : //github.com/facebook/facebook-ios-sdk/blob/master/src/FacebookSDKResources.bundle.README

例如,要添加登录按钮文本的德语翻译,您必须将以下内容添加到de.lproj中的文件Localizable.strings中:

"FBLV:LogInButton" = "Einloggen";

最后,您必须确保Facebook知道该捆绑软件。因此,您可以将以下内容添加到您的Info.plist中:

<key>FacebookBundleName</key>
<string>FacebookSDKOverrides</string> 

另外,如果您要执行以下操作,也可以在代码中指定:

[FBSettings setResourceBundleName:@"FacebookSDKOverrides"];

这对我有用,尽管我想使用主捆绑包进行覆盖,而只需在常规应用翻译中指定它们即可。与翻译工具的连接更加方便,因为您不需要每种语言翻译多个文件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章