带有数据的ListView背景滚动

问题描述:

是否可以在整个ListView上进行背景拉伸,而不只是停留在固定位置上?带有数据的ListView背景滚动

我记得在制作网站时,你可以让背景固定的背景在滚动时保持原来的位置,我试图存档与之相反的东西,当你向下滚动时使背景跟随数据。 ListView有这样的事情吗?

+0

让我补充一点,当我使用ScrollView时,背景“跟随”数据,就像在它里面,它只是相对于屏幕固定的。我可以用ScrollView来做一些巧妙的事情,而不是像ListView一样行事?如插入行并使其随内容一起扩展,等等。 – Rasive

使用股票ListView做你想做的事是不可能的。

ListView一次只显示几行,以节省View创建/管理等。这可能会导致系统崩溃。因此,ListView甚至不知道自身的总高度 - 直到该行可见时才显示行,并且行的高度可能会有所不同。如果它甚至不知道自己的身高,它怎么会有一个涵盖整个身体的背景?

也就是说,使用ScrollView 的想法可能是。然而,如果你只有几行,那么你会失去ListView的优化 - 那么这不是什么大问题;但如果你正在谈论几十行(或更多),那么你的应用程序可能会严重突兀。此外,您不会得到ListView的框架,该框架旨在制作更简单的基于行的用户界面。

可以编写自己的ListView子类(或自定义ListView)来计算其总高度(只要知道每行的高度是固定的),然后相应地绘制背景。如果我需要需要来完成你所描述的内容,并且有太多的行可以舒适地填充到ScrollView中,那么我可能会这么做。