Sco*_*hio 12 android drawingcache
我有一个布局ScrollView,其中包含以下观点:ImageView,TextView,WebView,TextView.(这是因为我想整体滚动,而不仅仅是内容WebView)
在加载一些HTML后WebView,我收到以下内容:
WARN/View(632): View too large to fit into drawing cache, needs 14236800 bytes, only 1536000 available
Run Code Online (Sandbox Code Playgroud)
......并且WebView不会显示内容.删除后ScrollView,警告消失,一切都很好,除了我失去了想要的滚动功能.
第一:我知道在一般情况下尝试使用ScrollView另一个内部ScrollView是一件坏事,但我并不是百分之百确定在任何情况下都有一个等效的解决方案而不使用ScrollView...我的意思是,当然可以放一个内容的ImageViews和TextViews进入WebView,但是Buttons或任何其他需要交互的UI元素呢?有没有一种方法可以解决这样的问题而不放弃布局并一次滚动所有内容?
我发现我不是唯一有这个问题的人.对于其他示例,请检查这些问题 - 尚未使用解决方案:
Col*_*lin 16
该问题似乎与硬件加速相关,如果API级别> = 14,则默认启用硬件加速.
我有一个ScrollView包含许多视图的应用程序,我想将其作为一个单独的单元滚动,类似于原始海报 - 其中一个视图是包含其内容的Web视图.如果启用了硬件加速并且渲染 WebView完全复杂(图像,边框等),则可以在LogCat中看到绘图缓存错误消息.一些屏幕有12个项目工作,而下一个屏幕有13个项目不起作用.我不认为它产生差异的项目数量,但最终渲染屏幕的复杂性.
症状通常是空白的WebView- 其他视图在视觉上呈现并完全形成.偶尔我看到整个屏幕都是空白的,但这可能是因为我在这里找到了各种各样的建议.
消息并不总是被看到.例如,我在运行4.2.2的三星Galaxy 4 Mini上看到问题,而在其他4.x设备上,例如运行4.1.2的廉价中文三星S3克隆,一切都很好.我没有在任何1.x或2.x设备上看到它.
我尝试在视图层次结构中有选择地关闭各种视图和布局上的硬件加速,但最后只是在清单文件中为整个应用程序的硬件加速转出了挫折,并看到我浪费了多少小时跟踪它.
关闭硬件加速后,所有问题都消失了.我发现我的任何设备都没有明显的性能差异.据推测,1.x和2.x设备从未使用硬件加速,而我的4.x设备必须足够快以应对仅软件渲染.不是说我的屏幕那么复杂.
2015年4月更新
不幸的是,即使关闭了硬件加速,现在运行4.4.2的三星Galaxy 4 Mini也会显示警告消息.我有一个带有JavaScript面板打开/关闭动画的webview.一切正常,除了初始布局(面板打开)引发这些警告,每次我关闭或打开面板我也得到它们.这些警告现在只是烦人,应用程序工作正常.
| 归档时间: |
|
| 查看次数: |
10011 次 |
| 最近记录: |