Android: очистить и обновить веб-просмотр для жестов работает в эмуляторе, а не на телефоне - PullRequest
0 голосов
/ 26 марта 2012

У меня есть веб-просмотр, содержание которого нужно обновлять жестом влево, вправо или влево, вправо.Это прекрасно работает в моем эмуляторе под управлением ICS 4.0.3, но, похоже, не работает на моем Samsung Galaxy Nexus под управлением ICS 4.0.2.Я вижу, как жест обнаруживается на устройстве, но содержание веб-просмотра никогда не обновляется.Ниже приведен код, который я использую для обновления веб-просмотра

webView.loadUrl("about:blank");
webView.loadDataWithBaseURL("about:blank", newContent, "text/html", "utf-8", null);

Я попытался отладить, и значение переменной newContent - это то, что, как и ожидалось веб-представлением, не отражает его.1006 * РЕДАКТИРОВАТЬ:

webView.loadData(body, "text/html", "utf-8");

выше было то, что работало, но обновление веб-просмотра выглядит не совсем гладко, я думаю, я должен работать.Но странно loadDataWithBaseURL работает на эмуляторе, а не на устройстве.

1 Ответ

0 голосов
/ 26 марта 2012

Я бы просто использовал

webView.loadDataWithBaseURL("about:blank", newContent, "text/html", "utf-8", null);

и удалил ваш вызов loadUrl, который кажется ненужным.

Убедитесь, что вы обновляете веб-представление в главном потоке пользовательского интерфейса.

Возможно, вы захотите взглянуть на newContent и убедиться, что это правильно сформированный HTML.

Я использовал этот вызов loadDataWithBaseURL в нескольких проектах, и он изменит содержимоеWebView.

...