diff --git a/tdesign-component/lib/src/components/popup/t_popup_panel.dart b/tdesign-component/lib/src/components/popup/t_popup_panel.dart index 9a6f3fa85..57244688d 100644 --- a/tdesign-component/lib/src/components/popup/t_popup_panel.dart +++ b/tdesign-component/lib/src/components/popup/t_popup_panel.dart @@ -253,9 +253,22 @@ abstract class _TPopupBaseState extends State } return false; }, - child: Container( - key: _childKey, - child: widget.child, + child: NotificationListener( + onNotification: (_) { + WidgetsBinding.instance.addPostFrameCallback((_) { + if (!_isDragging && mounted) { + _measureChildHeight(); + setState(() {}); + } + }); + return true; + }, + child: SizeChangedLayoutNotifier( + child: Container( + key: _childKey, + child: widget.child, + ), + ), ), );