[英]Replacing item by id of object in Flutter from listview.builder
我正在使用此處看到的滾動定位列表 https://pub.dev/packages/scrollable_positioned_list在發生通知時滾動到特定項目。
默認情況下,構建器使用索引來識別 go 的索引,但出於我的目的,我需要將 ID 作為標識符。
是否可以替換這個:
itemScrollController.scrollTo(
index: 3,
duration: Duration(milliseconds: 500),
curve: Curves.easeInOut,
);
但是要獲取列表中 object 的 ID?
嘗試這個:
var items = list.where((element) => element.id == 'ID');
if (items != null && items.isNotEmpty) {
var index = list.indexOf(items.first);
itemScrollController.scrollTo(
index: 3,
duration: Duration(milliseconds: 500),
curve: Curves.easeInOut,
);
}
var item = itemList .where((ele) => ele.id == 'YOUR_ID');
if (item != null && item.isNotEmpty) {
var itemIndex = list.indexOf(item.first);
itemScrollController.scrollTo(
index: itemIndex ,
duration: Duration(milliseconds: 500),
curve: Curves.easeInOut,
);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.