美文网首页
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