我看到了几个使用ListView作为body的主要Scaffold元素的示例,在一些教程中,它是SingleChildScrollView。我所了解的全部都是允许根据配置的方向进行某个滚动轴,但无法弄清楚何时使用另一条滚动轴?

ListView:

Scaffold
  body : ListView
    children : Padding/Container

SingleChildScrollView:
Scaffold
  body : SingleChildScrollView
    child : Column

最佳答案

您可以考虑将ListView作为对SingleChildScrollView + Column组合的优化。

通过使用ListView,仅可见的项目被安装和绘制。

另一方面,通过使用SingleChildScrollView + Column,即使只有很少的项目可见,整个项目列表也会被安装并绘制。

折衷方案是ListView不太灵活。因此,对于仅包含少量项目的复杂布局而言,提高性能可能并不值得,在这种情况下,我们可以使用SingleChildScrollView

关于flutter - Flutter中的ListView和SingleChildScrollView有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62146197/

10-09 03:21