屏幕外的绘图视图如何影响Android的性能?

时间:2017-06-28 16:10:23

标签: android performance webview

我正在尝试为多个webview创建某种水平幻灯片。滑块中可以有很多视图,但最多只能显示三个(一个在中央,另外两个部分隐藏在屏幕外)。

在我早期的实施中,我基于RelativeLayout创建了一个自定义视图组。我添加了所有需要的网络视图,在onLayout中,我调用了将要显示的三个网页视图的layout方法。我通过滚动切换显示的网页视图。

所以这是我的问题:Android如何处理未显示的内容?是否调用了draw方法?是否有很多观点没有显示出影响表现?

作为一个侧面问题,即使网页视图位于屏幕之外,它们也会加载内容吗?或者他们是否需要被绘制?

1 个答案:

答案 0 :(得分:0)

是的,在您描述的情况下,即使没有显示,也会被绘制。

在这种情况下,您最好的办法是使用ViewPager。

默认情况下,Viewpage仅绘制显示的内容以及内容左/右页面(如果需要,可以更改为全部绘制)。

回答你的问题:

是的,调用draw方法。它简称为屏幕。视图完全存在,可以进入视图。这就是滚动视图中的元素始终存在的原因。

这就是listviews / recyclerviews / viewpagers存在的原因。屏幕外元素由父视图组自动处理以节省内存。

第二个问题,是的,即使在屏幕外加载,网页视图也会加载其内容。