Flutter 获取控件尺寸和位置

1. 插件必须渲染好,

final RenderBox box = globalKey.currentContext.findRenderObject();
final size = box.size;
final topLeftPosition = box.localToGlobal(Offset.zero);
return topLeftPosition.dy;

  

2. 可以通过context.size获取当前控件的尺寸和位置offset信息

下面是示例,通过contex.size.height可以拿到child控件的高度
class HeightReporter extends StatelessWidget {
  final Widget child;

  HeightReporter({this.child});

  @override
  Widget build(BuildContext context) {
    return new GestureDetector(
      child: child,
      onTap: () {
        print('Height is ${context.size.height}');
      },
    );
  }

  

猜你喜欢

转载自www.cnblogs.com/pythonClub/p/10599324.html