У меня есть макет с ScrollView
, который содержит следующие виды: ImageView
, TextView
, WebView
, TextView
. (Это потому, что я хотел бы, чтобы просмотреть все вместе, а не только содержимое WebView
)WebView в ScrollView: «Просмотр слишком большой, чтобы вписаться в кеш-файл» - как переделать макет?
После загрузки некоторых HTML в WebView
, я получаю следующее:
WARN/View(632): View too large to fit into drawing cache, needs 14236800 bytes, only 1536000 available
... и содержимое WebView
не будет отображаться. После удаления ScrollView
предупреждение исчезает, и все хорошо, за исключением того, что я теряю желаемую функцию прокрутки.
Во-первых: я знаю, что пытается использовать ScrollView
внутри другого ScrollView
это плохо вообще, но я не уверен на 100%, что в каждом случае есть эквивалентное решение без использования ScrollView
... Я имею в виду , конечно, можно было разместить содержимое ImageView
s и TextView
s в WebView
, но как насчет Button
или каких-либо других элементов интерфейса, требующих взаимодействия? Есть ли способ вообще, который мог бы решить такие проблемы, не отказываясь от макета и прокручивая все сразу?
Я узнал, что я не единственный, у кого проблема. Для других примеров, проверить эти вопросы - без рабочего раствора еще:
- WebView and GridView into ScrollView, View too large to fit into drawing cache
- Android - View too large to fit into drawing cache
попробуйте материал в этом ответе: http://stackoverflow.com/a/5274400/507810, чтобы отключить прокрутку в WebView. Это может улучшить ситуацию. Тем не менее, это часть выстрела в темноте. – FoamyGuy
У меня была эта проблема, когда я случайно поместил один прокручиваемый вид внутри другого прокручиваемого вида/контейнера. Решение заключалось в том, чтобы поменять контейнер на LinearLayout. Для получения дополнительной информации см. Мой комментарий ниже этого ответа: https://stackoverflow.com/a/37418736/1617737 –