Flutter 布局- Stack,从草根到百万年薪程序员的十年风雨之路
在Flutter中,Stack组件是用来叠加组件的,它可以将子组件放在不同的位置,例如顶部、底部、居中等。
以下是一个使用Stack的例子:
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Stack Example'),
),
body: Center(
child: Stack(
alignment: Alignment.center,
children: <Widget>[
CircleAvatar(
backgroundImage: NetworkImage('https://avatars3.githubusercontent.com/u/12552427?v=4'),
radius: 50.0,
),
Container(
decoration: BoxDecoration(
color: Color(0x770000FF),
),
padding: EdgeInsets.all(5.0),
child: Text(
'Flutter',
style: TextStyle(
color: Colors.white,
fontSize: 20.0,
),
),
),
],
),
),
),
);
}
}
在这个例子中,我们创建了一个Stack,在其中放置了两个子组件:一个是CircleAvatar,一个是Container。CircleAvatar在最下面显示用户的头像,Container在上面显示用户名,并且Container的背景颜色是半透明的。
这只是Stack组件的基本用法,它还有更多的功能和用途,例如通过Positioned组件来控制子组件的具体位置等。
评论已关闭