下面的Flutter布局(一列中有两行,每行包含一个文本小部件和一个字段小部件)编译并运行-但文本和文本字段小部件没有显示。您应该看到的是单词“username”后面的一行文本字段,单词“password”后面的一行文本字段。请问我做错了什么?
import 'package:flutter/material.dart';
void main() => runApp(new MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'Welcome to Flutter',
home: new Scaffold(
appBar: new AppBar(
title: new Text('Welcome to Flutter'),
),
body: new Container(
padding: new EdgeInsets.all(20.0),
child: new Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
new Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
new Text('User Name'),
new TextField(
autofocus: true,
decoration: new InputDecoration(
border: InputBorder.none,
hintText: 'Please enter your user name'),
),
],
),
new Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
new Text('User Name'),
new TextField(
decoration: new InputDecoration(
border: InputBorder.none,
hintText: 'Please enter your pasword'),
),
],
),
],
),
)),
);
}
}
3条答案
按热度按时间cidc1ykv1#
根据https://stackoverflow.com/a/45990477/1649135,如果您将没有固有宽度的小部件放在一行中,则必须将它们嵌套在一个灵活的小部件中。
hkmswyz62#
为儿童使用新的Flexible()小部件
ux6nzvsh3#
也可以尝试用不同的方式指定颜色:
Color(0xff041421)
或
Colors.red
有时我们会忽略这样的小细节。