addController method
void
addController(
- String label,
- AnimationController controller, {
- VoidCallback? onGroupMembersCompleted,
添加控制器到指定分组(自动创建不存在的分组)
Implementation
void addController(String label, AnimationController controller, {VoidCallback? onGroupMembersCompleted}) {
// 确保分组存在
createGroup(label, onGroupMembersCompleted: onGroupMembersCompleted);
final group = _groups[label]!;
if (!group.contains(controller)) {
group.add(controller);
_controllerCompletionStatus[controller] = false;
// 修复:添加控制器后,如果分组从空变为非空,需要重置完成状态
if (group.length == 1) { // 刚刚从空变成有1个控制器
_groupCompletionStatus[label] = false;
}
controller.addStatusListener((status) {
_handleControllerStatusChange(controller, label, status);
});
}
}