У меня есть структура папок в контейнере для моего приложения ios, как показано ниже (внутри папки «Документы»):
/myfolder
/images/background.png
/meta/style.css
index.html
lifestyle.html
news.html
weather.html
Я добавил WKWebview в свое приложение, перетаскивая графический интерфейс в Main.storyboard, и я загружаю index.html в веб-просмотр следующим образом:
NSArray *documentPaths;
NSString *documentsDir;
.
.
.
documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
documentsDir = [documentPaths objectAtIndex:0];
documentsDir = [[NSString alloc] initWithFormat:@"%@", [documentsDir stringByAppendingString:@"/myfolder/index.html"]];
NSURL *url = [NSURL fileURLWithPath:documentsDir];
[self.webMyWebView loadFileURL:url allowingReadAccessToURL:url ];
Webview загружает index.html, но только части html. Он не загружает файл css (который должен отображать изображение в /images/background.png
, следовательно, изображение также отсутствует). Гиперссылки есть (синие и подчеркнутые), и ссылки кликабельны (гиперссылки при нажатии получают синий цвет фона), но веб-просмотр не меняется на гиперссылочную страницу (index.html ссылается на lifestyle.html, news.html и weather .html, 3 ссылки на страницу индекса)
style.css загружает изображение как
background: url(../images/background.png)
Пример ссылки на странице индекса:
<a href="news.html">News</a>
Как мне получить веб-просмотр для правильной загрузки моего локального html-файла? Я смог загрузить google.com в другую тестовую программу, которую я делал, и ссылки в ней работали просто отлично, поэтому, похоже, проблема с локальным файлом. Похоже, что большинство вопросов, которые я здесь видел, касаются html-файлов, добавляемых в рабочую область xcode как часть проекта (то есть видимую на панели навигатора проекта слева). Я хотел бы отметить, что все мои файлы находятся в контейнере, и любые дополнительные файлы, которые могут быть добавлены в будущем, также должны оставаться в контейнере. Все html-файлы автоматически создаются как часть другого процесса декодирования, поэтому у меня нет возможности изменить содержимое html-файлов.
Что нужно сделать, чтобы загрузить CSS и сделать ссылки на веб-просмотр кликабельными? Мне нужно сделать это в цели C.