我需要一个没有appbar的布局,所以最明显的方法就是省略appbar标签,Scaffold但是如果我这样做,内容会在状态栏下面,如下所示:
正如你所看到的那样,我的容器是蓝色的,从状态栏的下方开始,不应该是这种情况,所以我不得不手动设置容器的边缘,这不是很好,这是结果:
我有这种感觉,设备可能具有不同高度的状态栏,因此将我的上边距设置为固定大小可能无法在其他设备上正确呈现.是否有一种方法可以让我的内容自动定位在状态之下,就好像它位于AppBar状态栏下方.
这是我的脚手架代码:
return new Scaffold(
body: new Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
new HeaderLayout(),
],
),
);
Run Code Online (Sandbox Code Playgroud)
这是我的标题容器:
class HeaderLayout extends StatelessWidget{
@override
Widget build(BuildContext context) {
return new Container(
color: Colors.blue,
margin: const EdgeInsets.only(top: 30.0),
child: new SizedBox(
height: 80.0,
child: new Center(
child: new Text(
"Recommended Courses",
style: new TextStyle(color: Colors.white),
),
),
)
);
}
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个没有 Scaffold 元素的 Material design 应用程序:这是纯粹的默认应用程序:
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
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 …Run Code Online (Sandbox Code Playgroud) flutter ×2