Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 使小部件比视口大?_Flutter_Dart - Fatal编程技术网

Flutter 使小部件比视口大?

Flutter 使小部件比视口大?,flutter,dart,Flutter,Dart,在我的flatter应用程序中,我想做一个圆圈作为背景,如下所示:问题主要是当屏幕处于横向时,除非它覆盖所有屏幕,否则无法在那里放置圆圈。 ClipRect还有另一种方法,如果这对你不起作用,请告诉我 class MyWidget extends StatelessWidget { @override Widget build(BuildContext context) { return LayoutBuilder( builder: (context, cons

在我的flatter应用程序中,我想做一个圆圈作为背景,如下所示:

问题主要是当屏幕处于横向时,除非它覆盖所有屏幕,否则无法在那里放置圆圈。 ClipRect还有另一种方法,如果这对你不起作用,请告诉我


class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {

    return LayoutBuilder(
      builder: (context, constraints) {
        final radius = constraints.biggest.width * 1.2;
        
        return SizedBox(
          width: radius,
          height: radius,
          child: FittedBox(
            fit: BoxFit.fitHeight,
            child: Container(
              width: radius,
              height: radius ,
              decoration: BoxDecoration(
                shape: BoxShape.circle,
                color: Colors.blue,
              ),
            ),
          ),
        );
      }
    );
  }
}

另一种方法:


class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {

    return LayoutBuilder(
      builder: (context, constraints) {
        final radius = constraints.biggest.width * 1.2;
        
        return OverflowBox(
          maxWidth: radius,
          maxHeight: radius,
          child: Container(
            width: radius,
            height: radius ,
            decoration: BoxDecoration(
              shape: BoxShape.circle,
              color: Colors.blue,
            ),
          ),
        );
      }
    );
  }
}

final radius=constraints.max.width*1.2
1.2
是圆圈重叠的程度,您可以更改这个数字。

好主意。是什么阻止你这么做的?这回答了你的问题吗?