目前,我正在使用 MonoTouch 完成我的第一个 iPhone 应用程序。通过“*.lproj”文件夹进行的本地化按预期工作。
有一个 UIWebView
显示一些用户指南,我用 LoadHtmlString()
方法填充这个。 (即不需要互联网连接)。
由于文本有点长,我不想将它放在“Localizable.strings”文件中,而是换成一个完全独立的文件(因为我也在为 Windows .NET 应用程序做这件事) ):
在上面的截图中,我会在每个语言文件夹中有一个“help.html”文件,并调用 LoadHtmlString
方法以类似于 的方式从适当的文件中读取>NSBundle.MainBundle.LocalizedString
.
我的问题:
是否可以拥有每种语言的文件并从 MonoTouch 应用程序中访问它们?
Dimitris 解决方案的跟进
基于 Dimitris' solution ,我用这段代码解决了它:
var localizedHtmlFile = NSBundle.MainBundle.PathForResource("help", "html");
var text = File.ReadAllText(localizedHtmlFile);
helpTextView.LoadHtmlString (text, null);
最佳答案
是的,当然可以。您可以像这样获取本地化文件的路径:
string localizedHtmlFile = NSBundle.MainBundle.PathForResource("help", "html");
您可以对各种不同类型的资源(PDF、图像等)使用 PathForResource 方法。第一个参数是文件名,第二个参数是扩展名。检查 PathForResource 方法的其他重载以获得更多选项。
关于c# - 是否可以将大的本地化字符串换成他们自己的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7454026/