リストの末尾(一番下)までジャンプしたいの?|ScrollController|ListView|Flutter
ListView の末尾(一番下)へジャンプしたいケース、割りとある説。
そして、それが割りと難しい説。
やり方
「ScrollController」を使う。
---------
final _scrollController = ScrollController();
...
/// ListView にコントローラーをセット
ListView.builder(
controller: _scrollController,
...
);
...
/// リストの末尾(一番下)までジャンプ
_scrollController.jumpTo(_scrollController.position.maxScrollExtent);
---------
試してみると解決できない問題が出てくる。このジャンプ、リストに最後の要素を追加した直後は無理なのだ。調べると、同じ結論の人しかいなかった。
ジャンプ前に遅延を設定しても、その時間に確実性がないから、絶対的な対応にならない。どうしても下から二番目を表示してしまうの。諦めた。
参照した記事
- Flutter-ListViewで末尾に追加したアイテムにジャンプする
- [Flutter]リストビュー(ListView)で最後の要素を表示するには?
- 【Flutter】一番下にスクロールする方法【2選】
- Flutter – Scroll Down to Bottom or Top of List in ListView
- Programmatically scrolling to the end of a ListView
- Automatic Scroll-To-Bottom in Flutter
直近に読んでいた漫画(おすすめ)
コメント
コメントを投稿