美文网首页
Flutter - Container(容器)

Flutter - Container(容器)

作者: 辻子路 | 来源:发表于2019-07-18 13:37 被阅读0次

前端大家都知道有div用来布局,可以设置margin,padding等等,Flutter里面相对应的就是Container了。

             Container(
                child: Icon(  //添加一个子元素,用来展示icon
                  Icons.pool,
                  size: 32.0,
                  color: Colors.yellow,   // icon的颜色
                ),
                color: Color.fromRGBO(3, 54, 255, 1.0),  // 容器的背景色
                width: 90.0,  // 容器宽度
                height: 90.0, // 容器高度
                padding: EdgeInsets.all(16.0),  // 容器的内边距
                margin: EdgeInsets.fromLTRB(0.0, 300.0, 0.0, 0.0),  // 容器的外边距,这里四个参数和web不一样,顺序是 左,上,右,下
              )

那我们想要加上边框该如何呢,在Container里面有个decoration,它接收BoxDecoration的widget。这里面就可以放置border啦。

Container(
                child: Icon(
                  Icons.pool,
                  size: 32.0,
                  color: Colors.yellow,
                ),
                // color: Color.fromRGBO(3, 54, 255, 1.0),
                width: 90.0,
                height: 90.0,
                padding: EdgeInsets.all(16.0),
                margin: EdgeInsets.fromLTRB(0.0, 300.0, 0.0, 0.0),
                decoration: BoxDecoration(
                  color: Color.fromRGBO(3, 54, 255, 1.0), // 容器的背景色,注意和Container直接设置color效果一样,但会冲突,如果有BoxDecoration,那么背景色就在这里面设置
                  border: Border.all( // 设置四边,如果只要设置一边用Border(top:xxx,left:xxx,xxx,xxx)
                      style: BorderStyle.solid,
                      color: Colors.yellow,
                      width: 3.0),
                  borderRadius: BorderRadius.only( //如果要设置全部启用圆角效果用BorderRadius.circular
                    topLeft: Radius.circular(64.0),  //设置左上角圆角
                  ),
                  boxShadow: [
                    BoxShadow(
                      offset: Offset(6.0, 7.0), // 偏移量 x,y
                      color: Colors.lightBlue,
                      blurRadius: 1.0, //模糊程度
                      spreadRadius: 2.0, //扩散程度
                    ),
                    BoxShadow(
                      offset: Offset(-6.0, -8.0), // 偏移量 x,y
                      color: Colors.pink,
                      blurRadius: 2.0, //模糊程度
                      spreadRadius: 3.0, //扩散程度
                    ),
                  ],
                  // shape: BoxShape.circle,  //盒子形状,与borderRadius会冲突
                  // gradient: RadialGradient(
                  //   // 盒行渐变 添加渐变色
                  //   colors: [
                  //     Color.fromRGBO(7, 102, 255, 1.0),
                  //     Color.fromRGBO(3, 28, 128, 1.0),
                  //   ],
                  // ),
                  gradient: LinearGradient(
                    // 线行渐变 添加渐变色
                    colors: [
                      Color.fromRGBO(7, 102, 255, 1.0),
                      Color.fromRGBO(3, 28, 128, 1.0),
                    ],
                  ),
                  // image: xxxx //背景图像
                ),
              )

相关文章

网友评论

      本文标题:Flutter - Container(容器)

      本文链接:https://www.haomeiwen.com/subject/kkiklctx.html