Language: English | 中文简体
增加额外的 hitTest 区域,而不影响本身的大小和布局。
跟官方的 widgets 一样,使用它们来保证,当额外 hitTest 区域超出了父 widget的大小的时候,一样能接收到 hitTest。
StackHitTestWithoutSizeLimit
RowHitTestWithoutSizeLimit
,ColumnHitTestWithoutSizeLimit
,FlexHitTestWithoutSizeLimit
SizedBoxHitTestWithoutSizeLimit
GestureDetectorHitTestWithoutSizeLimit
RawGestureDetectorHitTestWithoutSizeLimit
ListenerHitTestWithoutSizeLimit
parameter | description | default |
---|---|---|
extraHitTestArea | 额外增加的 hitTest 区域 | EdgeInsets.zero |
debugHitTestAreaColor | 用于 debug 的 hitTest 区域背景色 | null |
你可以设置 ExtraHitTestBase.debugGlobalHitTestAreaColor
来替代在每个监听 widgets 中单独设置 debugHitTestAreaColor
return GestureDetectorHitTestWithoutSizeLimit(
child: mockButtonUI(text),
//debugHitTestAreaColor: Colors.pink.withOpacity(0.4),
extraHitTestArea: const EdgeInsets.all(16),
onTap: () {
showToast('$text:onTap${i++}',
duration: const Duration(milliseconds: 500));
},
);
如果这个 package 没有你需要的 widgets , 你可以使用下面的类自己实现。
RenderBoxHitTestWithoutSizeLimit
,RenderBoxChildrenHitTestWithoutSizeLimit