是否可以将大型本地化字符串换成自己的文件?

Uwe*_*eim 4 c# iphone xamarin.ios localizable.strings ios

目前我正在使用MonoTouch完成我的第一个iPhone应用程序.通过"*.lproj"文件夹进行本地化按预期工作.

有一个UIWebView显示一些用户指南,我用这个LoadHtmlString()方法填充这个.(即不需要互联网连接).

由于文本有点长,我不希望它被放在"Localizable.strings"文件中,而是被换成一个完全独立的文件(因为我也是为Windows .NET应用程序做的):

MonoTouch中的项目结构

在上面的屏幕截图中,我将在每个语言文件夹中包含一个"help.html"文件,并调用该LoadHtmlString方法以相似的方式从相应的文件中读取NSBundle.MainBundle.LocalizedString.

我的问题:

是否可以使用每种语言文件并从MonoTouch应用程序中访问它们?

Dimitris解决方案的后续行动

基于Dimitris的解决方案,我通过以下代码解决了它:

var localizedHtmlFile = NSBundle.MainBundle.PathForResource("help", "html");
var text = File.ReadAllText(localizedHtmlFile);

helpTextView.LoadHtmlString (text, null);
Run Code Online (Sandbox Code Playgroud)

Dim*_*kos 6

是的,当然有可能.您可以像这样获取本地化文件的路径:

string localizedHtmlFile = NSBundle.MainBundle.PathForResource("help", "html");
Run Code Online (Sandbox Code Playgroud)

您可以将PathForResource方法用于各种不同类型的资源(PDF,图像等).第一个参数是文件名,第二个参数是其扩展名.检查PathForResource方法的其他重载以获取更多选项.