gpt4 book ai didi

flutter - 如何检测ListView项目是否在屏幕外添加?

转载 作者:行者123 更新时间:2023-12-03 04:54:09 24 4
gpt4 key购买 nike

如何检测是否在屏幕外添加了ListView项?我想滚动到新添加的项目(如果它是在屏幕外添加的)。

下面是一个最小的示例。如果持续按住+按钮,则最终会在屏幕外添加一个项目。我想检测到这种情况,然后滚动到新添加的项目。

class _MyHomePageState extends State<MyHomePage> {
List<String> _items = [];

void _addItem() {
final count = _items.length + 1;

setState(() {
_items.add('Item $count');
});
}

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: ListView.builder(
itemCount: _items.length,
itemBuilder: (_, index) {
return Container(
height: 50,
child: Card(
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: <Widget>[
Text(_items[index]),
],
),
),
);
}),
floatingActionButton: FloatingActionButton(
onPressed: _addItem,
tooltip: 'Add Item',
child: Icon(Icons.add),
),
);
}
}

最佳答案

https://dartpad.dev/81dcfd6e4255bde548751180c54a9ade

检查一下。
您需要使用滚动 Controller

关于flutter - 如何检测ListView项目是否在屏幕外添加?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60868721/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com