6.饮食列表——食物列表页

6.1 UI设计 

6.2 实现食物列表

6.2.1 顶部导航实现

定义一个header组件里面存放返回的图片和早餐的字样

给图片加上点击事件,用户点击返回图片以后会返回到上一个页面(使用router.back())

@Builder header(){
    Row(){
      Image($r('app.media.ic_public_back'))
        .width(24)
        .onClick(()=>router.back())
        Blank()
      Text('早餐').fontSize(18).fontWeight(CommonConstants.FONT_WEIGHT_600)
        .height(32)
    }
    .width(CommonConstants.THOUSANDTH_940)
  }

6.2.2 食物列表实现

首先定义一个TabContentBuilder组件用来存放循环食物列表,这些作文TabContent里面的内容,本来是把TabContent也写到自定义组件里面的但是会报错。

@Builder TabContentBuilder(){

      List({space:CommonConstants.SPACE_10}){
        ForEach([1,2,3,4,5,6],(item)=>{
          ListItem(){
            Row({space:CommonConstants.SPACE_6}){
              //实物图片
              Image($r('app.media.toast'))
                .width(50)
              Column({space:CommonConstants.SPACE_4}){
                Text('全麦吐司').fontWeight(CommonConstants.FONT_WEIGHT_500)
                Text('91千卡/片').grayText()
              }
              Blank()
              Image($r('app.media.ic_public_add_norm_filled'))
                .width(18)
                .fillColor($r('app.color.primary_color'))
            }
            .width('100%')
            .padding(CommonConstants.SPACE_6)
          }
        })
      }
      .width('100%')
      .height('100%')

  }
 Tabs(){
      TabContent(){
             this.TabContentBuilder()
      }
      .tabBar('全部')
      .padding(CommonConstants.SPACE_2)
      TabContent(){
        this.TabContentBuilder()
      }
      .tabBar('主食')

      TabContent(){
        this.TabContentBuilder()
      }
      .tabBar('果蔬')
      TabContent(){
        this.TabContentBuilder()
      }
      .tabBar('肉蛋奶')
      TabContent(){
        this.TabContentBuilder()
      }
      .tabBar('坚果')
      TabContent(){
        this.TabContentBuilder()
      }
      .tabBar('其他')
    }

6.3 运行效果

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值