Flutter笔记(7)Container容器布局

Decoration decoration,

this.foregroundDecoration,

double width,

double height,

BoxConstraints constraints,

this.margin,

this.transform,

this.child,

})

依据构造函数可以看出以下:

  • 对齐(alignment)

  • 调节自身的尺寸适应子节点

  • 采用width、height以及constraints布局

  • 扩展自身去适应父节点

Container示例代码:


import ‘package:flutter/material.dart’;

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {

@override

Widget build(BuildContext context) {

return new MaterialApp(

title: ‘Container布局容器示例’,

home: new LayoutDemo(),

);

}

}

class LayoutDemo extends StatelessWidget{

@override

Widget build(BuildContext context) {

// TODO: implement build

Widget container = new Container(

//添加装饰效果

decoration: new BoxDecoration(

color: Colors.grey

),

child: new Column(

children: [

new Row(

children: [

//使用Expanded防止内容溢出

new Expanded(

child: new Container(

width: 150.0,

height: 150.0,

decoration: new BoxDecoration(

//上下左右边框设置为10.0.颜色为蓝色

border: new Border.all(width: 10.0,color: Colors.blueGrey),

//设置上下左右边框的弧度设置为8.0

borderRadius:

const BorderRadius.all(const Radius.circular(8.0)),

),

//上下左右增加边距

margin: const EdgeInsets.all(4.0),

//添加图片

child: new Image.asset(‘images/icon_1.png’),

),

),

new Expanded(

child: new Container(

width: 150.0,

height: 150.0,

decoration: new BoxDecoration(

//上下左右边框设置为10.0.颜色为蓝色

border: new Border.all(width: 10.0,color: Colors.blueGrey),

//设置上下左右边框的弧度设置为8.0

borderRadius:

const BorderRadius.all(const Radius.circular(8.0)),

),

//上下左右增加边距

margin: const EdgeInsets.all(4.0),

//添加图片

child: new Image.asset(‘images/icon_2.png’),

),

),

new Expanded(

child: new Container(

width: 150.0,

height: 150.0,

decoration: new BoxDecoration(

//上下左右边框设置为10.0.颜色为蓝色

border: new Border.all(width: 10.0,color: Colors.blueGrey),

//设置上下左右边框的弧度设置为8.0

borderRadius:

const BorderRadius.all(const Radius.circular(8.0)),

),

//上下左右增加边距

margin: const EdgeInsets.all(4.0),

//添加图片

child: new Image.asset(‘images/icon_3.png’),

),

),

new Expanded(

child: new Container(

width: 150.0,

height: 150.0,

decoration: new BoxDecoration(

//上下左右边框设置为10.0.颜色为蓝色

border: new Border.all(width: 10.0,color: Colors.blueGrey),

//设置上下左右边框的弧度设置为8.0

borderRadius:

const BorderRadius.all(const Radius.circular(8.0)),

),

//上下左右增加边距

margin: const EdgeInsets.all(4.0),

//添加图片

child: new Image.asset(‘images/icon_1.png’),

),

),

],

)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值