如何在 a 的末尾添加一个元素Listview.builder,允许用户单击它并让他返回列表顶部?
RaS*_*Sha 11
将滚动控制器传递给ListView.builder项目计数并添加一个,用于将“返回顶部”按钮添加为最后一项。然后,当用户点击列表的最后一项时,您可以使用 listView 控制器将列表滚动到顶部。
@override
Widget build(BuildContext context) {
return Scaffold(
body: ListView.builder(
controller: _controller,
itemCount: items.length + 1,
itemBuilder: (context, index) => (index != items.length)
? ListTile(title: Text(items[index]))
: ListTile(
leading: IconButton(
icon: Icon(Icons.keyboard_arrow_up),
onPressed: _navigateToTop),
),
),
);
}
void _navigateToTop() {
final Duration duration = Duration(milliseconds: 400);
final Curve curve = Curves.ease;
if (_controller.hasClients) {
var scrollPosition = this._controller.position;
scrollPosition.animateTo(
0,
duration: duration,
curve: curve,
);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4820 次 |
| 最近记录: |