iPhone UIWebview - сохранение загруженного изображения - PullRequest
5 голосов
/ 10 февраля 2009

У меня есть приложение для iPhone со встроенным элементом управления UIWebview (Safari). Я хотел бы иметь возможность хранить изображения с определенных веб-страниц локально.

Могу ли я программно получить доступ к пути, по которому UIWebview загружает изображения? Или мне нужно проанализировать HTML, а затем найти ресурс изображения в сети и загрузить его снова?

Ответы [ 3 ]

5 голосов
/ 16 февраля 2009

Я не знаю, можете ли вы получить доступ к предварительно загруженным изображениям из кэша Safari ...

Однако вы можете легко найти URL-адреса изображений без разбора HTML, запустив вместо этого немного javascript:

NSString *script = @"var n = document.images.length; var names = [];"
                    "for (var i = 0; i < n; i++) {"
                    "     names.push(document.images[i].src);"
                    "} String(names);";
NSString *urls = [webView stringByEvaluatingJavaScriptFromString:script];
// urls contains a comma-separated list of the image URLs.
0 голосов
/ 10 февраля 2009

отказ от ответственности: я не пробовал это.

Если вы можете узнать их имена, UIImage отвечает на + (UIImage *) imageNamed: (NSString *), что подразумевается в документации, может вернуть изображение из кеша устройства.

Мне было бы интересно узнать результаты любых экспериментов.

0 голосов
/ 10 февраля 2009

Я не думаю, что вы можете сохранить изображения с помощью UIWebview напрямую, вам придется загружать изображения вручную ...

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