XCode - (iOS) Вызов локального HTML-файла в SplitView по ссылке .plist? - PullRequest
0 голосов
/ 18 марта 2011

Новичок здесь (что может быть очевидно из вопроса), но после многих часов попыток выяснить это, я достиг точки, мне нужно обратиться за помощью ...

По сути, все, что яхочу сделать, это разобрать строку из массива, заполненного в .plist.Эта строка является локальным URL.Он отлично работает для внешних URL-адресов, но независимо от того, что я пробовал для локального URL-адреса, все, что я получаю, - это ничего - даже URL-адрес не найден (я вру - это произошло однажды, но никогда больше не будет реплицироваться).

Любая помощь будет принята с благодарностью!

У меня есть этот код в DetailViewController:

    NSString *attractionURL = [detailItem description];
    NSURL *url = [NSURL URLWithString:attractionURL];
    [wikiView loadRequest:[NSURLRequest requestWithURL:url]];

И этот код в popOver (RootViewController):

- (void)viewDidLoad {
    [super viewDidLoad];
    self.clearsSelectionOnViewWillAppear = NO;
    self.contentSizeForViewInPopover = CGSizeMake(320.0, 600.0);

    NSBundle *bundle = [NSBundle mainBundle];
    NSString *path = [bundle pathForResource:@"recipes"
                        ofType:@"plist"];
    attractions = [[NSArray alloc] initWithContentsOfFile:path];

    self.title = @"Recipes";

С URL-адресами в файле .plist:

<array>
    <array>
        <string>Sirloin</string>
        <string>http://Resources/iPad/index.html</string>
    </array>
    <array>
        <string>Chasseur</string>
        <string>http://www.jamesmartinsfood.com</string>
    </array>

</array>
</plist>

Как я уже сказал, внешний URL-адрес работает нормально, локальный просто не работает на корточках ...

Приветствия!

1 Ответ

0 голосов
/ 18 марта 2011

Ваш локальный URL не определен правильно, он не должен иметь http://, поскольку он не размещен на http-сервере.

Это должно быть в формате, подобном следующему.

file://localhost/var/mobile/Application/${APP_ID}/MyApp.app/index.html

Первая часть потенциально может меняться в зависимости от устройства / среды, и вам придется полагаться наOS Framework, чтобы определить его, поэтому в своем списке вы должны только определить относительный путь к локальным файлам и затем добавить путь, предоставленный ОС.

Что-то вроде

NSString *path = [[NSBundle mainBundle] pathForResource:myFileName ofType:myFileExtension];

Может работать для вас, где вы myFileName это "индекс" и myFileExtension это "HTML"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...