リストビューがfirestoreクエリストリームを使用してstreambuilderからデータをレンダリングされた後、リストの一番下までスクロールするためにリストでScrollControllerを使用する最良の方法は何ですか?
scrollcontroller.jumpto メソッドを使用するのに最適な場所はどこですか?
// initialisation
ScrollController scrollController=ScrollController();
// inside initstate() and build method with 1000ms delay - not working
scrollController.jumpTo(scrollController.position.maxScrollExtent);
// widget inside build method
Expanded(
child: StreamBuilder<DocumentSnapshot>(
stream: Firestore.instance
.collection('Data')
.document(widget.dataID)
.snapshots(),
builder: (context, AsyncSnapshot<DocumentSnapshot> snapshot) {
print("Called");
if (!snapshot.hasData) {
return Text("Loading");
}
var info= snapshot.data.data;
if (info!= null &&
info["messages"] != null &&
info["messages"].length > 0 &&
userList.length > 0) {
return ListView.builder(
controller: scrollController,
itemCount: info["challengeReplies"].length,
itemBuilder: (BuildContext context, int index) {
return ChallengeReplyListItem(
currentUserID: widget.currentUserID,
messagesType: info["messages"][index]["messagesType"],
messagesContent: info["messages"][index]["messagesContent"],
},
);
} else if (isLoading) {
return Center(
child: CircularProgressIndicator(),
);
} else {
return Center(child: Text("No Data Found",style: TextStyle(color: Colors.blueGrey,fontSize: 22,fontWeight: FontWeight.w500),));
}
}),
),
データが適切にレンダリングされた後、ページの下部へのスクロールを処理するための適切な解決策を誰かが提案できますか?
ありがとう。