前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Flutter基础widgets教程-Container篇

Flutter基础widgets教程-Container篇

原创
作者头像
青年码农
发布2020-10-10 16:14:20
4650
发布2020-10-10 16:14:20
举报
文章被收录于专栏:青年码农

1 Container

Container类似于iOS中的UIView,具有绘制、定位、调整大小功能。通常用来装载其它子控件,假如Container没有子控件,它将自动填充整个屏幕;反之,会根据子控件大小,调整自身大小,从而达到自适应效果。

注意: 使用Container时,通常要有一个父控件,一般情况下不单独使用Container。常用的父控件有Center widget、Padding Widget、Column Widget、Row Widget、Scaffold Widget。

2 构造函数

代码语言:javascript
复制
 Container({
    this.alignment, 
    this.padding, 
    Color color, 
    Decoration decoration, 
    Decoration foregroundDecoration, 
    double width,
    double height, 
    BoxConstraints constraints, 
    this.margin,
    this.transform, 
    this.child,
})

3 常用属性

3.1 alignment设置子widget的在container中的对齐方式

3.1.1 居中下对齐

代码语言:javascript
复制
alignment:Alignment.bottomCenter,

3.1.2 左下角对齐

代码语言:javascript
复制
alignment:Alignment.bottomLeft,

3.1.3 右下角对齐

代码语言:javascript
复制
alignment:Alignment.bottomRight,

3.1.4 居中对齐

代码语言:javascript
复制
alignment:Alignment.center,

3.1.5 居中左对齐

代码语言:javascript
复制
alignment:Alignment.centerLeft,

3.1.6 居中右对齐

代码语言:javascript
复制
alignment:Alignment.centerRight,

3.1.7 居中上对齐

代码语言:javascript
复制
alignment:Alignment.topCenter,

3.1.8 右上角对齐

代码语言:javascript
复制
alignment:Alignment.topRight,

3.1.9 左上角对齐

代码语言:javascript
复制
alignment:Alignment.topLeft,

3.2 padding:设置container的内边距

3.2.1 根据需求设置

代码语言:javascript
复制
padding: EdgeInsets.only(top: 10.0,bottom: 10.0,left: 10.0,right: 10.0)

这里的top,bottom,left,right可以根据自己需求设置,不一定每个都要设置,不设置的就是0.0。

3.2.2 转圈设置

代码语言:javascript
复制
padding:EdgeInsets.fromLTRB(20.0, 20.0, 30.0, 20.0)

LTRB分别代表left,top,right,bottom。

3.2.3 水平垂直方向设置

代码语言:javascript
复制
padding: EdgeInsets.symmetric(vertical: 20.0,horizontal: 10.0)

vertical代表垂直方向,horizontal代表水平方向。

3.3 margin:设置container的外边距

3.3.1 根据需求设置

代码语言:javascript
复制
margin: EdgeInsets.only(top: 10.0,bottom: 10.0,left: 10.0,right: 10.0)

这里的top,bottom,left,right可以根据自己需求设置,不一定每个都要设置,不设置的就是0.0。

3.3.2 转圈设置

代码语言:javascript
复制
margin:EdgeInsets.fromLTRB(20.0, 20.0, 30.0, 20.0)

LTRB分别代表left,top,right,bottom。

3.3.3 水平垂直方向设置

代码语言:javascript
复制
margin: EdgeInsets.symmetric(vertical: 20.0,horizontal: 10.0)

vertical代表垂直方向,horizontal代表水平方向。

3.4 color:设置container的背景颜色

3.4.1 十六进制表示方法

代码语言:javascript
复制
color: Color(0xffFFFFFF)

这里的0x是固定的,ff代表颜色的透明度,后面的六位代表颜色的值。

3.4.2 ARGB表示方法

代码语言:javascript
复制
color: Color.fromARGB(2, 29, 30, 10)

A透明度,取值范围是0~255;

R红色,取值范围是0~255;

G绿色,取值范围是0~255;

B蓝色,取值范围是0~255;

3.4.3 RGBO表示方法

代码语言:javascript
复制
color: Color.fromRGBO(20, 30, 100, .9)

R红色,取值范围是0~255;

G绿色,取值范围是0~255;

B蓝色,取值范围是0~255;

O透明度,取值范围是0~1;

3.5 width:container的宽

代码语言:javascript
复制
width: 250,

3.6 height:container的高

代码语言:javascript
复制
height: 250,

3.7 child:container的子widget

代码语言:javascript
复制
child: Text("内容"),

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 Container
  • 2 构造函数
  • 3 常用属性
    • 3.1 alignment设置子widget的在container中的对齐方式
      • 3.2 padding:设置container的内边距
        • 3.3 margin:设置container的外边距
          • 3.4 color:设置container的背景颜色
            • 3.5 width:container的宽
              • 3.6 height:container的高
                • 3.7 child:container的子widget
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档