Flutter- 如何一次且仅一次渲染 listview.builder 中的所有项目
Flutter- How to render all items in the listview.builder at once and only once
我在 listview.builder 的 flutter 中遇到问题,它只渲染显示的项目,而不是所有项目(即使它们没有显示),当我向下或向上滚动时,它渲染未显示的项目并重新渲染已经呈现的项目。
这实际上不是问题,phone 内存只渲染显示的项目很好,但对我来说,这是一个问题,因为我很难对项目进行一些操作。
这些操作就像从每件商品中获取数据,比如商品的价格,如果它高于 100 美元,然后在屏幕底部打印它们的总数。
我做不到这一点,因为它没有显示所有项目以从中获取数据,当我向下滚动时,它从未显示的项目中获取数据,但是当我滚动时备份,它再次从已经显示的项目中获取数据!
例如,如果显示的项目有这个数据= 300,而没有显示的项目有这个数据= 800,一开始它会得到300,当我向下滚动时,它会得到1100,但是当我起来,它会得到1400
我真的很想解决这个问题,它阻碍了我完成我的项目。
非常感谢您的宝贵时间。
我只把 Listview.builder
放在 SingleChildScrollView
中就解决了这个问题,这就解决了所有问题。
我在 listview.builder 的 flutter 中遇到问题,它只渲染显示的项目,而不是所有项目(即使它们没有显示),当我向下或向上滚动时,它渲染未显示的项目并重新渲染已经呈现的项目。
这实际上不是问题,phone 内存只渲染显示的项目很好,但对我来说,这是一个问题,因为我很难对项目进行一些操作。
这些操作就像从每件商品中获取数据,比如商品的价格,如果它高于 100 美元,然后在屏幕底部打印它们的总数。
我做不到这一点,因为它没有显示所有项目以从中获取数据,当我向下滚动时,它从未显示的项目中获取数据,但是当我滚动时备份,它再次从已经显示的项目中获取数据!
我真的很想解决这个问题,它阻碍了我完成我的项目。
非常感谢您的宝贵时间。
我只把 Listview.builder
放在 SingleChildScrollView
中就解决了这个问题,这就解决了所有问题。