FBSDKLoginButton 标题本地化(iOS 项目)
FBSDKLoginButton title localization (iOS project)
我想在我的项目中本地化 FBSDKLoginButton 的标题字符串,其中包括 FBSDKLoginKit.framework。 facebook-ios-sdk 中有一个 FacebookSDKStrings.bundle
,如 Facebook iOS 关于本地化的 SDK 常见问题解答中所述。
同样来自 FBSDKLoginButton and FBSDKInternalUtility 的源代码,我认为只要将该包放入我的项目中就可以正常工作吗?
但是将 FacebookSDKStrings.bundle
拖到我的项目中不起作用。其他解决方案?
(这是一个 Swift 项目,但我尝试过 Objective-C,同样的问题。Facebook SDK for iOS v4.5、4.7 已尝试,Xcode 7.0.1.)
我刚遇到这个问题。 Facebook 文档对本地化有点模糊,尤其是在使用 Cocoapods 时。
通过阅读 Facebook SDK 源代码,我找到了正确包含 Facebook 字符串文件的解决方案。
- 创建
FacebookSDKStrings.bundle
(只是重命名的文件夹)
- 在其中创建您的语言文件夹(例如:
en.lproj
& fr.lproj
)
- 在每个语言文件夹中创建一个名为
FacebookSDK.strings
的字符串文件
- 将包添加到您的项目中。
然后在每个 .strings
文件中添加要本地化的每一行。
我想 Facebook 会在某个地方提供所有密钥的详尽列表。但是,如果您使用的是 Cocoapods,则可以 Cmd-Shift-F
您要翻译的字符串(例如:"Log in with Facebook"
)在 Facebook SDK 源代码中找到类似
的内容
NSLocalizedStringWithDefaultValue(@"LoginButton.LogInLong", @"FacebookSDK", [FBSDKInternalUtility bundleForStrings],
@"Log in with Facebook",
@"The long label for the FBSDKLoginButton when the user is currently logged out");
显示相应的密钥:LoginButton.LogInLong
PS: here's the FacebookSDKStrings.bundle
sample I just created.(当然是先解压)
我只是忘了将我的本地语言添加到项目设置 - 信息 - 本地化。我的错。将 FacebookSDKStrings.bundle 拖入项目即可。
我想在我的项目中本地化 FBSDKLoginButton 的标题字符串,其中包括 FBSDKLoginKit.framework。 facebook-ios-sdk 中有一个 FacebookSDKStrings.bundle
,如 Facebook iOS 关于本地化的 SDK 常见问题解答中所述。
同样来自 FBSDKLoginButton and FBSDKInternalUtility 的源代码,我认为只要将该包放入我的项目中就可以正常工作吗?
但是将 FacebookSDKStrings.bundle
拖到我的项目中不起作用。其他解决方案?
(这是一个 Swift 项目,但我尝试过 Objective-C,同样的问题。Facebook SDK for iOS v4.5、4.7 已尝试,Xcode 7.0.1.)
我刚遇到这个问题。 Facebook 文档对本地化有点模糊,尤其是在使用 Cocoapods 时。
通过阅读 Facebook SDK 源代码,我找到了正确包含 Facebook 字符串文件的解决方案。
- 创建
FacebookSDKStrings.bundle
(只是重命名的文件夹) - 在其中创建您的语言文件夹(例如:
en.lproj
&fr.lproj
) - 在每个语言文件夹中创建一个名为
FacebookSDK.strings
的字符串文件 - 将包添加到您的项目中。
然后在每个 .strings
文件中添加要本地化的每一行。
我想 Facebook 会在某个地方提供所有密钥的详尽列表。但是,如果您使用的是 Cocoapods,则可以 Cmd-Shift-F
您要翻译的字符串(例如:"Log in with Facebook"
)在 Facebook SDK 源代码中找到类似
NSLocalizedStringWithDefaultValue(@"LoginButton.LogInLong", @"FacebookSDK", [FBSDKInternalUtility bundleForStrings],
@"Log in with Facebook",
@"The long label for the FBSDKLoginButton when the user is currently logged out");
显示相应的密钥:LoginButton.LogInLong
PS: here's the FacebookSDKStrings.bundle
sample I just created.(当然是先解压)
我只是忘了将我的本地语言添加到项目设置 - 信息 - 本地化。我的错。将 FacebookSDKStrings.bundle 拖入项目即可。