布局边界未在 Flutter 应用程序中显示,但在其他应用程序中显示

Posted

技术标签:

【中文标题】布局边界未在 Flutter 应用程序中显示,但在其他应用程序中显示【英文标题】:Layout bounds not showing in Fultter app but it shows for other apps 【发布时间】:2019-07-16 05:24:55 【问题描述】:

我刚开始使用颤振并使用默认配置创建了一个空白应用程序,当我从开发人员选项中打开显示布局边界时,它没有像任何其他应用程序那样显示任何边界。

这是怎么回事?

【问题讨论】:

看看Flutter visual debugging和Flutter widget inspector。 在颤动中,一切都是小部件。 Widget 渲染由 Flutter 中的 ObjectRender 处理。您无法获取小部件在屏幕上的大小或位置,因为小部件就像一个蓝图,它实际上并不在屏幕上。它只是对底层渲染对象应该使用哪些变量的描述。 @FirzanShaikh能否解释一下flutter如何渲染android布局边界无法识别任何布局的布局? 【参考方案1】:

要从 Flutter 应用的开发者选项中显示 布局边界,我们必须这样做

    将此包导入main.dart 类。

    import 'package:flutter/rendering.dart';
    

    build()main() 中,您必须将此debugPaintSizeEnabled 变量设置为true

    debugPaintSizeEnabled = true;
    

示例:这是我的完整课程

import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';

void main()

  runApp(MyApp());


class MyApp extends StatelessWidget 
  // This widget is the root of your application.

  @override
  Widget build(BuildContext context) 
    debugPaintSizeEnabled = true;
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(    
        primarySwatch: Colors.blue,
      ),
    home: MyHomePage(title: 'Flutter Demo Home Page'),
    
    );
  

class MyHomePage extends StatefulWidget 
  MyHomePage(Key key, this.title) : super(key: key);
  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();


class _MyHomePageState extends State<MyHomePage> 
  int _counter = 0;

  void _incrementCounter() 
    setState(() 
      _counter++;
    );
  

  @override
  Widget build(BuildContext context) 
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '$_counter',
              style: Theme.of(context).textTheme.display1,
            ),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: Icon(Icons.add),
      ),
    );
  

【讨论】:

这正是我想要的。 完美。它节省了我很多时间。谢谢。

以上是关于布局边界未在 Flutter 应用程序中显示,但在其他应用程序中显示的主要内容,如果未能解决你的问题,请参考以下文章

Flutter List 未在异步方法之外更新

图像未在表格单元格上完美显示

Flutter Firebase:抬头通知未在后台显示

深色主题未在我的 Android 应用中显示表格值

Pod install 未在 Flutter 应用程序中安装 Pod

H2 内存数据库未在 weblogic 中显示控制台,但在 Tomcat 中显示