美文网首页
10.首页楼层区域

10.首页楼层区域

作者: 冰点雨 | 来源:发表于2019-12-23 20:57 被阅读0次
17073f882bf8094293cd821f85141c0.png

楼层标题组件(其实就是一个图片)

class FloorTitle extends StatelessWidget {
  final String picture_address; // 图片地址
  FloorTitle({Key key, this.picture_address}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Container(
      padding: EdgeInsets.all(8.0),
      child: Image.network(picture_address),
    );
  }
}

楼层商品组件
在编写楼层商品组件时,我们要对它详细的拆分,我们把一个组件拆分成如下内部方法。

_goodsItem:每个商品的子项,也算是这个类的最小模块了。
_firstRow:前三个商品的组合,是一个Row组件。
_otherGoods:其它商品的组合,也是一个Row组件。
总后把这些组件通过Column合起来。总代码如下:


//楼层商品组件
class FloorContent extends StatelessWidget {
  final List floorGoodsList;

  FloorContent({Key key, this.floorGoodsList}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Container(
      child: Column(
        children: <Widget>[
          _firstRow(),
          _otherGoods()
        ],
      ),
    );
  }

  Widget _firstRow(){
    return Row(
      children: <Widget>[
        _goodsItem(floorGoodsList[0]),
        Column(
          children: <Widget>[
           _goodsItem(floorGoodsList[1]),
           _goodsItem(floorGoodsList[2]),
          ],
        )
      ],
    );
  }

  Widget _otherGoods(){
    return Row(
      children: <Widget>[
       _goodsItem(floorGoodsList[3]),
       _goodsItem(floorGoodsList[4]),
      ],
    );
  }

  Widget _goodsItem(Map goods){

    return Container(
      width:ScreenUtil().setWidth(375),
      child: InkWell(
        onTap:(){print('点击了楼层商品');},
        child: Image.network(goods['image']),
      ),
    );
  }

}

数据赋值

 String floor1Title =data['data']['floor1Pic']['PICTURE_ADDRESS'];//楼层1的标题图片
    String floor2Title =data['data']['floor2Pic']['PICTURE_ADDRESS'];//楼层1的标题图片
    String floor3Title =data['data']['floor3Pic']['PICTURE_ADDRESS'];//楼层1的标题图片
    ist<Map> floor1 = (data['data']['floor1'] as List).cast(); //楼层1商品和图片 
    List<Map> floor2 = (data['data']['floor2'] as List).cast(); //楼层1商品和图片 
    List<Map> floor3 = (data['data']['floor3'] as List).cast(); //楼层1商品和图片 

    return SingleChildScrollView(
      child: Column(
      children: <Widget>[
          SwiperDiy(swiperDataList:swiperDataList ),   //页面顶部轮播组件
          TopNavigator(navigatorList:navigatorList),   //导航组件
          AdBanner(advertesPicture:advertesPicture), 
          LeaderPhone(leaderImage:leaderImage,leaderPhone: leaderPhone),  //广告组件  
          Recommend(recommendList:recommendList),    
          FloorTitle(picture_address:floor1Title),
          FloorContent(floorGoodsList:floor1),
          FloorTitle(picture_address:floor2Title),
          FloorContent(floorGoodsList:floor2),
          FloorTitle(picture_address:floor3Title),
          FloorContent(floorGoodsList:floor3),
        ],
        ) ,
    );

相关文章

  • 10.首页楼层区域

    楼层标题组件(其实就是一个图片) 楼层商品组件在编写楼层商品组件时,我们要对它详细的拆分,我们把一个组件拆分成如下...

  • 商城操作说明(持续更新)

    首页楼层修改 右侧文章修改

  • 10.实现首页

    背景 在互联网红海式的竞争中有90%的客户会停留在首页上。这样首页对于我们在客户心中的就占据这非常重要的地位。为了...

  • 综合实战

    制作有路网首页 有路网首页布局框架制作 划分区域,确定div 测量各个区域的宽高 使用浮动对网页进行布局 整合各章...

  • 综合实战

    制作有路网首页 有路网首页布局框架制作 划分区域,确定div测量各个区域的宽高使用浮动对网页进行布局 整合各章中的...

  • 电商案例首页布局楼层区

    1). 楼层区 floor 注意这个floor 一个大盒子 包含, 不要给高度,内容有多少,算多少 2). 家用...

  • 报警区域和探测区域的划分

    报警区域的划分 报警区域应根据防火分区或楼层划分。一个报警区域宜由一个或同层相邻几个防火分区组成。 探测区域的划分...

  • 首页header区域开发

    这节主要是讲解上面红框的制作这个尺寸是按照iPhone6给的2倍图的设计稿,同样,我们制作页面的时候,也会以2倍图...

  • 产品设计、好奇心和有趣

    这个问题的产生,主要缘于设计宝贝格子的网站首页时。 在设计商品楼层时,为了首页内容的“极大丰富”,我们决定在左边放...

  • day1

    制作首页APP组件 完成header区域,使用mint-UI组件 完成底部tabbar区域,使用的是MUI。 MU...

网友评论

      本文标题:10.首页楼层区域

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