В моем приложении есть UIWebView, который я хочу использовать для отображения изображения, которое будет ссылаться на другой URL.
я использую
<img src="image.jpg" /> to load the image.
Проблема в том, что изображение не загружается (то есть не может быть найдено), даже если оно добавлено в качестве ресурса в мой проект и скопировано в комплект.
Я пытался использовать NSBundle, чтобы получить полный путь к изображению и использовать его, и он все еще не отображается в веб-представлении.
Любые идеи?
Ответы:
Использование относительных путей или файла: пути для ссылки на изображения не работают с UIWebView. Вместо этого вы должны загрузить HTML в представление с правильным baseURL:
Затем вы можете ссылаться на ваши изображения, как это:
(от uiwebview повторно )
источник
Использовать это:
источник
bundleURL
было добавлено в NSBundle. Не нужно брать bundlePath и конвертировать в URL. Так что для людей, работающих в версиях выше 10.6, это дает лучшее решение.Я тоже столкнулся с этой проблемой. В моем случае я имел дело с некоторыми изображениями, которые не были локализованы, а с другими - на нескольких языках. Базовый URL не получил изображения внутри локализованных папок для меня. Я решил это, сделав следующее:
Затем используйте imgHTMLTag в HTML-коде UIWebView при загрузке содержимого.
Я надеюсь, что это поможет любому, кто столкнулся с той же проблемой.
источник
file://
было то, что мне было нужно.попробуйте использовать строку изображения base64.
источник
У меня была схожая проблема, но все предложения не помогли.
Однако проблема заключалась в самом * .png. У него не было альфа-канала . Каким-то образом Xcode игнорирует все файлы png без альфа-канала во время процесса развертывания.
источник
Вы можете добавить папку (скажем, WEB с подпапками css, img и js и файлом test.html) в свой проект, выбрав « Добавить файлы в« MyProj »» и выбрав « Создать ссылки на папки» . Теперь следующий код позаботится обо всех упомянутых изображениях, CSS и JavaScript
источник
В Swift 3:
Это работало для меня, даже когда изображение было внутри папки без каких-либо изменений.
источник
Прочитав пару глав в Cookbok для программирования на iOS 6 и начав изучать программирование на target-c и iOS, я просто хотел бы добавить, что если кто-то собирается загружать ресурсы из пользовательского пакета и использовать его в веб-представлении , это может быть достигнуто следующим образом:
Затем в html вы можете ссылаться на ресурс, используя «пользовательский» комплект в качестве базового пути:
источник
Свифт версия ответа Литу ТВ:
источник
Свифт версия Адама Александерса Цель C ответ:
источник
Если вы используете относительные ссылки на изображения, то изображения не будут отображаться, поскольку все структуры папок не сохраняются после компиляции приложения iOS. Вместо этого вы можете преобразовать локальную веб- папку в пакет , добавив расширение имени файла .bundle .
Поэтому, если ваш локальный веб-сайт содержится в папке « www », его следует переименовать в « www.bundle ». Это позволяет сохранять папки с изображениями и структуру каталогов. Затем загрузите файл « index.html » в WebView в виде строки HTML с помощью baseURL (путь к www.bundle), чтобы разрешить загрузку относительных ссылок на изображения.
источник
Эти ответы мне очень помогли - в частности, файл: \\ xxxxxxx.xxx, но мне пришлось сделать обходной путь для отображения изображения.
В моем случае у меня есть файл HTML на моем сервере, который я загружаю в каталог документов. Я хочу, чтобы он отображал с локальным графиком в UIWebView, который я не мог заставить работать. Вот что я сделал:
Итак, при запуске скопируйте файл в каталог документов:
источник
Мое комплексное решение (или учебник) для rss-ленты (получить в RSSItems) работает только на устройстве:
и
}
на контроллере View
}
класс предметов rss
часть любого HTML с изображением
изображение сохранено для имени htc-one-tab-7-concept-1 (1) .jpg
источник