我正在尝试实现一个可调整大小的小部件,其拐角处带有手柄。拐角手柄将Stack
溢出一半宽度/高度。
问题:,当内部工作正常时,手柄的外部不报告手势事件。
这是有意的,或者我做错了什么。如果是预期的行为,那么下一步该做什么。
样例代码
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.green,
body: Transform.translate(
offset: boxOffset,
child: Stack(
overflow: Overflow.visible,
fit: StackFit.expand,
children: <Widget>[
Container(
width: 100.0,
height: 100.0,
color: Colors.red,
),
Positioned(
left: 100.0 - 20.0,
top: 100.0 - 20.0,
child: GestureDetector(
onTap: () {print("tapped");},
child: Container(
width: 80.0,
height: 80.0,
color: Colors.blue,
),
),
)
],
),
)
);
}
最佳答案
这是所需的行为。如果小部件可以捕获其边界之外的指针事件;容易陷入无法确定目标是哪个小部件的情况。
简而言之,不要使用溢出。重构您的布局,以确保其完全包含在其父级的边界之内。