main.dart中的脚手架未编译

时间:2019-06-03 04:41:53

标签: android flutter flutter-layout

道歉;我是编程新手,但我正努力克服问题。我一直在研究其布局。

但是当我尝试构建一个运行许多手工制作的小部件的移动应用程序时,这些小部件会导入到main.dart中 像这样的东西:

import 'package:flutter/material.dart';
import 'package:flutterproject/screen/first-Widget.dart';
import 'package:flutterproject/screen/seconds-Widget.dart';
import 'package:flutterproject/screen/Third-Widget.dart';

          body:
          Container(
            child: first-Widget(),
          ),
          Container(
            child: seconds-Widget(),
          ),
          Container(
            child: Third-Widget(),
          ),

但是当我设计(以上)系统上升错误时;位置参数过多,我可以尝试另一个

import 'package:flutter/material.dart';
import 'package:flutterproject/screen/first-Widget.dart';
import 'package:flutterproject/screen/seconds-Widget.dart';
import 'package:flutterproject/screen/Third-Widget.dart';

          body:
          children: <Widget>[
            Container(
              child: first-Widget(),
            ),
            Container(
              child: seconds-Widget(),
            ),
            Container(
              child: Third-Widget(),
            ),
         ]

此设计,系统上升错误;子级未定义的地方

这是我正在经历的一些教程;

  1. https://flutter.dev/docs/development/ui/layout
  2. https://www.youtube.com/watch?v=azkqq0FNHuk&t=589s&ab_channel=FlutterCrashCourse

我正在Windows 7上运行flutter 1.5,并使用Android Studio作为IDE

如果您能帮助我这个新来的人,

已编辑或加载项

我将第一个部件编辑为这样的形式;

return new Container(
  child:
    Column(children: <Widget>[
           Row(
                children: <Widget>[
                //image & text
               ])//row

           ])//Column

  child: Expanded(
          child: Row(
              children: <Widget>[
                     //text & image
                     ])//row
               )//expanded
)//container

这个问题,如果我不添加容器,则无法将小部件返回到main.dart文件,但是容器没有 children-widget

今天结束时,我的问题是我无法将乘数手工部件返回到main.dart文件中。

1 个答案:

答案 0 :(得分:1)

首先,Flutter中的所有组件都不是函数,它们被称为Widget。您需要对Flutter中的小部件有一个大概的了解。我建议您仔细研究一下Layout Widgets

所以您正在尝试构建这样的视图

Layouts in Flutter

首先分析设计,然后尝试将其归类为浮动窗口小部件。因此,您应该连续看到3组小部件。所以第一个小部件是行。

body: Row(
     children: <Widget>[

]
) 

现在分析该行中的单个窗口小部件。我可以在列中看到一个图标和一个文本。 为此,

Column(
    Icon(Icons.star),
    Text("CALL")
)

最后,

body: Row(
     children: <Widget>[
           Column(
            children: <Widget>[
                Icon(Icons.star),
                Text("CALL"),
            ]),
            Column(
            children: <Widget>[
                Icon(Icons.star),
                Text("ROUTE")
            ]),
            Column(
            children: <Widget>[
                Icon(Icons.star),
                Text("SHARE"),
            ]),
]
) 

``