Flutter中如何实现屏幕垂直滚动?附代码片段
Flutter实现屏幕垂直滚动的解决方法
你当前代码里用Column作为页面内容容器,但Column本身没有滚动能力,当内容高度超过屏幕时就会出现内容溢出、无法滚动的问题。要实现垂直滚动,最简单直接的方式就是用SingleChildScrollView把Column包裹起来。
修改后的代码示例:
@override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: Scaffold( body: SingleChildScrollView( child: Column( children: <Widget>[ SizedBox.fromSize(size: Size.fromHeight(25)), actionBar(context, currentAddress), buildFloatingSearchBar(context), Container( // 这里补充你原来的容器内容 ), // 其他需要展示的子组件 ], ), ), ), ); }
额外提醒:如果你的页面包含大量重复的列表项(比如商品列表、消息列表),推荐用ListView替代SingleChildScrollView+Column的组合。ListView自带懒加载机制,只会渲染当前屏幕可见的列表项,能有效降低内存占用,提升页面性能。
内容的提问来源于stack exchange,提问作者Adesh Bhoyar
相关产品推荐
相关产品推荐

