Bei*_*man 14 dart material-design flutter flutter-layout
我见过几个ListView
用作主要body
元素的示例,Scaffold
并且在一些教程中,它是SingleChildScrollView
. 我所理解的只是允许根据配置的方向进行一些滚动轴,但无法弄清楚何时使用一个而不是另一个?
列表显示:
Scaffold
body : ListView
children : Padding/Container
Run Code Online (Sandbox Code Playgroud)
单子滚动视图:
Scaffold
body : SingleChildScrollView
child : Column
Run Code Online (Sandbox Code Playgroud)
Rém*_*let 41
您可以将ListView视为对SingleChildScrollView + Column组合的优化。
通过使用ListView,只安装和绘制可见的项目。
另一方面,通过使用SingleChildScrollView + Column,整个项目列表被挂载+绘制,即使只有少数项目可见。
权衡是ListView不太灵活。所以对于具有少量项目的复杂布局,性能提升可能不值得麻烦,在这种情况下我们可以使用SingleChildScrollView。
jit*_*555 11
ListView:当我们必须为 n 个元素呈现相同类型的小部件时使用
SingleChildScrollView:当我们有 n 个元素的不同小部件时使用。
理想情况下,我们需要滚动的两种情况,Listview 都有默认行为,但列和其他小部件没有那么需要使用SingleChildScrollView
更新: 选择 ListView 时应注意的重要一点
ListView() -- Render all the items in the list, even if it is not visible.
`ListView.Builder()` -- Render only visible items on the screen.
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5447 次 |
最近记录: |