Примечание: - Мы можем установить высоту UIWebView, как я упоминал выше в методе webViewDidFinishLoad
ужно загрузить файлы JavaScript из папки ресурсов моих приложений. На данный момент он прекрасно читает изображения с ресурсов, но почему-то не читает javascripts.
Мне удалось отобразить HTML-документы, которые ссылаются на эти javascript-коды, если сами html-файлы записаны в ресурсы, но я бы хотел отобразить html / js, установив html-код UIWebView, чтобы он мог быть динамическим.
Вот что я делаю:
NSString * html = @"<!DOCTYPE html><html><head><title>MathJax</title></head><body><script type=\"text/x-mathjax-config\">MathJax.Hub.Config({tex2jax: {inlineMath: [[\"$\",\"$\"],[\"\\(\",\"\\)\"]]}});</script><script type=\"text/javascript\" src=\"/MathJax/MathJax.js\"></script>$\\int_x^y f(x) dx$<img src=\"coffee.png\"></body></html>";
NSString * path = [[NSBundle mainBundle] resourcePath];
path = [path stringByReplacingOccurrencesOfString:@"/" withString:@"//"];
path = [path stringByReplacingOccurrencesOfString:@" " withString:@"%20"];
NSString * resourcesPath = [[NSString alloc] initWithFormat:@"file://%@/", path];
[webview loadHTMLString:html baseURL:[NSURL URLWithString:resourcesPath]];
Теперь, если я изменю базовый URL на мой сервер, на котором также есть необходимые файлы, он загружается правильно. Было бы здорово не требовать подключения к интернету. Любая помощь приветствуется !!! ;)
Я нашел это полезным для получения изображений для отображения:iPhone Dev: UIWebView baseUrl для ресурсов в папке «Документы», а не в комплекте приложений
Редактировать:
Вместо замены строки и кодирования URL я смог получить изображения, просто вызвав resourceURL в mainBundle, но все еще не выполняя javascript.
NSString * setHtml = @"<!DOCTYPE html><html><head><title>MathJax</title></head><body><script type=\"text/x-mathjax-config\">MathJax.Hub.Config({tex2jax: {inlineMath: [[\"$\",\"$\"],[\"\\(\",\"\\)\"]]}});</script><script type=\"text/javascript\" src=\"/MathJax/MathJax.js\"></script>$\\int_x^y f(x) dx$<img src=\"images/test.png\"></body></html>";
[webview loadHTMLString:setHtml baseURL:[[NSBundle mainBundle] resourceURL]];
РЕДАКТИРОВАТЬ
Если вы хотите помочь в этом, я помог вам, создав пример проекта!
https://github.com/pyramation/math-test
git clone [email protected]:pyramation/math-test.git