Възможно ли е да се разменят големи низове за локализация към техните собствени файлове?

В момента завършвам първото си приложение за iPhone с MonoTouch. Локализацията чрез папките "*.lproj" работи според очакванията.

Имате UIWebView, който показва някои насоки за потребителя, попълвам това с метода LoadHtmlString(). (Т.е. не е необходима интернет връзка).

Тъй като текстът е малко по-дълъг, не искам да се поставя във файла "Localizable.strings", а да се разменя в напълно отделен файл (тъй като го правя и за Windows .NET приложения):

Структура на проекта в MonoTouch

В горната екранна снимка бих имал един файл "help.html" във всяка езикова папка и бих извикал метода LoadHtmlString за четене от съответния файл по начин, който би бил подобен на NSBundle.MainBundle.LocalizedString.

Моят въпрос:

Възможно ли е да имате файлове на всеки език и да осъществявате достъп до тях от приложение MonoTouch?

Последващи действия след решението на Димитрис

Въз основа на Решението на Димитрис, реших го с този код:

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

helpTextView.LoadHtmlString (text, null);

person Uwe Keim    schedule 17.09.2011    source източник


Отговори (1)


Да, разбира се, че е възможно. Можете да получите пътя на локализирания файл по следния начин:

string localizedHtmlFile = NSBundle.MainBundle.PathForResource("help", "html");

Можете да използвате метода PathForResource за различни видове ресурси (PDF файлове, изображения и др.). Първият параметър е името на файла, а вторият е неговото разширение. Проверете другото претоварване на метода PathForResource за повече опции.

person Dimitris Tavlikos    schedule 17.09.2011