第一步 聲明key : 類似於TextField的Texteditcontroller
GlobalKey _key = GlobalKey();
在需要獲取position,size的widget中賦值key屬性
child: CustomPaint(
key: _key,
painter: _BoardPainter(
width: rowCount, height: columnCount, dotList: _dotList),
size: Size(300, 300),
),
在需要獲position,size的地方使用以下代碼獲取值
//獲取position
RenderBox box = _key.currentContext.findRenderObject();
Offset offset = box.localToGlobal(Offset.zero);
//獲取size
Size size = box.size;