showOverlay method
当 overlayEntry 还存在时,可以调用此方法直接显示弹出层,通常有 2 种情况会调用它:
- 开启 keepAlive 保持弹窗状态
- 执行隐藏动画还未结束时又立即显示
Implementation
@protected
@mustCallSuper
void showOverlay() {
assert(
overlayEntry != null,
'Overlay 还未插入,执行 showOverlay 方法前请执行 insertOverlay 方法!',
);
overlayState.overlayElement.showTarget(overlayId);
// 若是手动调用此方法,还需要同步 modelValue 状态
if (modelValue != true) {
ignoreOnceListener = true;
modelValue = true;
}
}