如何控制基于父项或子项的调整大小行为?

How to control sizing behaviour to be based on parent or child?

举个例子

new Center(
  child: new GestureDetector(
    child: new Center(
      child: new Text('Center'),
    ),
  ),
);

是否有通用的方法强制 GestureDetector 采用其父项(外部中心)的大小而不是其子项(内部中心)的大小?

您可以使用 behavior: HitTestBehavior.opaqueGestureDetector 触发手势中的任意位置点击,而不仅仅是 child。

  new Center(
    child: new GestureDetector(
      behavior: HitTestBehavior.opaque,
      onTap: () {
        print('tapped');
      },
      child: new Center(
          child: new Text('Center'),
      ),
    ),
  ),