findIndexByKey method
- Key key
override
Find index of child element with associated key.
This will be called during performRebuild
in SliverMultiBoxAdaptorElement
to check if a child has moved to a different position. It should return the
index of the child element with associated key, null if not found.
If not provided, a child widget may not map to its existing RenderObject when the order of children returned from the children builder changes. This may result in state-loss.
Implementation
@override
int? findIndexByKey(Key key) {
if (findChildIndexCallback == null) {
return null;
}
final Key childKey;
if (key is _SaltedValueKey) {
final _SaltedValueKey saltedValueKey = key;
childKey = saltedValueKey.value;
} else {
childKey = key;
}
return findChildIndexCallback!(childKey);
}