屏幕外的工程视图如何影响Android的性能?
我正在尝试为多个网络视图创建某种水平幻灯片。滑块中可以有很多视图,但最多只能显示三个(一个在中间,另外两个部分隐藏在屏幕之外) 在我早期的实现中,我基于屏幕外的工程视图如何影响Android的性能?,android,performance,webview,Android,Performance,Webview,我正在尝试为多个网络视图创建某种水平幻灯片。滑块中可以有很多视图,但最多只能显示三个(一个在中间,另外两个部分隐藏在屏幕之外) 在我早期的实现中,我基于RelativeLayout创建了一个自定义视图组。我添加了所需的所有网络视图,并在onLayout中调用将显示的三个网络视图的layout方法。我通过滚动切换显示的网络视图 所以我的问题是:安卓如何处理未显示的内容?是否调用了他们的draw方法?有很多视图没有像那样显示会影响性能吗 作为一个附带的问题,即使在屏幕之外,网络视图也会加载其内容吗?
RelativeLayout
创建了一个自定义视图组。我添加了所需的所有网络视图,并在onLayout
中调用将显示的三个网络视图的layout
方法。我通过滚动切换显示的网络视图
所以我的问题是:安卓如何处理未显示的内容?是否调用了他们的draw
方法?有很多视图没有像那样显示会影响性能吗
作为一个附带的问题,即使在屏幕之外,网络视图也会加载其内容吗?或者需要绘制它们吗?是的,在您描述的情况下,它们将被绘制,即使没有显示 在这种情况下,最好使用ViewPager 默认情况下,Viewpagers仅绘制显示的内容以及内容左/右的页面(如果需要,可以更改为全部绘制) 回答你的问题: 是的,调用了draw方法。这就是所谓的屏幕外。该视图完全存在,并且可以进入视图。这就是为什么滚动视图中的元素总是存在的原因 这就是ListView/recyclerviews/viewpagers存在的原因。屏幕外元素由父视图组自动处理以节省内存 第二个问题,是的,即使在屏幕外加载,网络视图也会加载其内容