使用了 bindWidget后在切换主tabbar后,弹框不会自动消息
Closed this issue · 1 comments
Version Information
- Flutter version: [e.g. v3.19.6]
- flutter_smart_dialog version: [e.g. v4.9.4]
Describe the bug/requirement
使用IndexedStack创建2个页面,在A页面增加一个按钮,点击弹出弹框,代码如下
var result = await SmartDialog.showAttach(
targetContext: null,
targetBuilder: (offset, size) {
Offset set = Offset(0, _getMenuOffSetY() + 40.w);//
return set;
},
builder: (context) {
if (item.isMultipleSelection()) {
return MenuFilterWidget(
items: item.children,
parent: item,
selectData: ref.watch(homeMenuSelectedProvider),
);
} else if (item.isLeftRight()) {
return MenuCategoryWidget(
items: item.children,
parent: item,
selectData: ref.read(homeMenuSelectedProvider),
allowMultipleSelection: item.allowMultipleSelection,
);
}
return Container();
},
// maskColor: Colors.red,
bindPage: true,
debounce: true,
maskIgnoreArea: Rect.fromLTRB(0, _getMenuOffSetY() + 40.w, 0, 0),
clickMaskDismiss: true,
backDismiss: true,
onMask: () {
SmartDialog.dismiss();
_reset(item);
});
当在A页面点击按钮弹出菜单栏的一瞬间,去点击切换tabbar的按钮,手速够快的话,能必先这个问题。
我也有看到你的bindPage的操作逻辑,是通过NavigatorObserver中的didPop来处理,好像不是很符合当前的情况,请问这种应该怎么解决???
Problem demo
能提供可复现且可运行的demo, 再开issue
你上面的乱七八糟的代码没有任何意义, 我也没时间看这种东西