当前位置: 首页 > news >正文

微信建网站平台的宁河网站建设

微信建网站平台的,宁河网站建设,如何管理wordpress,自媒体多平台发布工具幽蓝君最近发现小红书是个好东西,一定要多逛 今天就浅浅模仿一下小红书app,主要是底部tab栏和主页部分。 首先看一下tabbar,由于中间有一个红色按钮的存在,所以这里我使用自定义导航栏来实现,自定义的实现逻辑是在本来…

幽蓝君最近发现小红书是个好东西,一定要多逛

今天就浅浅模仿一下小红书app,主要是底部tab栏和主页部分。

首先看一下tabbar,由于中间有一个红色按钮的存在,所以这里我使用自定义导航栏来实现,自定义的实现逻辑是在本来app的上层叠加一层自定义tabbar,使用监听index的变化来改变tababr的状态,具体实现代码如下:

Column(){  if(!this.tabItem.middleMode){    Text(this.tabItem.title)      .fontSize(16)      .fontWeight(FontWeight.Bold)      .fontColor(this.isSelected ? '#000000' : '#B7B7B7')  }else {    Text('+')      .fontSize(30)      .width(50)      .height(30)      .backgroundColor(Color.Red)      .fontColor(Color.White)      .textAlign(TextAlign.Center)      .lineHeight(30)  }
}.backgroundColor(Color.White).width("100%").height(56).justifyContent(FlexAlign.Center)Flex(){  ForEach(this.tab,(item:YLTabClass,index:number)=>{    YLTabbarItem({tabItem:item,isSelected:this.currentIndex === index})      .onClick(()=>{        if(index != 2){          this.currentIndex = index        }        this.tabItemClick(index);      }) })}

然后来到主页部分,最上面是一个导航栏,这个导航栏使用系统的Navigation就可以实现,需要注意的地方是导航栏上有带角标的按钮,这个按钮在很多地方都有出现,比如tabbar上等等,所以把它抽出来做一个单独的组件:

Stack({alignContent:Alignment.TopEnd}){  Text(this.title)    .fontColor(this.isSelect?Color.Black: Color.Gray)    .fontSize(17)    .fontWeight(FontWeight.Bold)  if(this.badge > 0){   Text(this.badge.toString())      .width(16)      .height(16)      .fontSize(12)      .textAlign(TextAlign.Center)      .backgroundColor(Color.Red)      .fontColor(Color.White)      .borderRadius(8)      .margin({right:-10,top:-4})  }}.padding(10)

接下来是分类频道部分,这一部分比较简单,使用一个scroll组件就能实现:

Scroll(){  Row({space:20}){    ForEach(this.scrollTitleList,(str:string,index)=>{      Text(str)        .fontSize(16)        .fontColor(Color.Gray)    })  }}.scrollable(ScrollDirection.Horizontal).scrollBar(BarState.Off).width('100%')

最后主要内容部分是一个瀑布流,瀑布流看起来比较难,其实它和普通网格组件唯一的不同点是每一个图片的尺寸不同,瀑布流的相关代码如下:

WaterFlow() {  LazyForEach(this.dataSource, (item: number) => {    FlowItem() {      Column() {        Image('/pages/img/img' + item % 5 + '.jpg')          .objectFit(ImageFit.Fill)          .width('100%')          .height(this.itemHeightArray[item % 100])        Text('和闺蜜在一起能长寿 ')          .fontColor(Color.Black)          .fontSize(15)          .margin({top:6})        Row(){          Row(){            Image($r('app.media.header'))              .width(20)              .height(20)              .backgroundColor(Color.Gray)              .borderRadius(10)            Text('这里是昵称')              .fontColor(Color.Gray)              .fontSize(13)              .margin({left:4})          }          .alignItems(VerticalAlign.Center)          Text('3233')            .fontColor(Color.Gray)            .fontSize(13)        }        .margin({top:6})        .width('100%')        .alignItems(VerticalAlign.Center)        .justifyContent(FlexAlign.SpaceBetween)      }      .alignItems(HorizontalAlign.Start)    }    .width('100%')  }, (item: string) => item)}.padding({left:5,right:5}).columnsTemplate("1fr 1fr").columnsGap(8).rowsGap(5).backgroundColor(Color.White).width('100%').height('100%')

http://www.dtcms.com/a/438418.html

相关文章:

  • 做教育网站有FTP免费网站
  • 【详细】idea设置格式化方式 google style
  • 关于智能体互联协议标准的130天
  • 君正T32开发笔记之IVSP版本环境搭建和编译
  • DDR Study - MR Registers during the Clock Switch
  • Claude Code 的魔力
  • Node.js 常用工具
  • Node.js 的替代品Bun
  • 网站平台建设所需开发工具广安做网站的公司
  • 阿里云做网站送服务器吗显示网站建设中
  • 【AGI使用教程】Meta 开源视觉基础模型 DINOv3(1)下载与使用
  • JAVA之拷贝数组
  • 开源 C# 快速开发(十七)进程--消息队列MSMQ
  • [UnrealEngine] 虚幻编辑器界面 | 虚幻界面详解 | UE5界面详解
  • 旅游网站开发周期成都古怪科技网站建设公司
  • JavaEE初阶——网络原理初探:从独立模式到TCP/IP五层模型
  • 代码随想录算法训练营第五十七天|53.寻宝
  • 构建模拟人类思维过程的高级智能体检索增强生成(Agentic RAG)流水线模糊性检查、多工具规划、自我修正、因果推理等功能
  • 去类似美团网站做软件开发摄影毕业设计选题作品
  • TeR-TSF 论文解读
  • Eclipse 中文语言包安装教程:一键将界面切换为中文
  • id注册网站修改wordpress数据库配置文件
  • Navicat 17最新安装使用教程(附安装包)
  • C语言字符串安全查找三剑客:strchr_s、strrchr_s、strstr_s解析
  • 网络层协议—IP协议
  • 网站设计前沿网站淘宝开店需要多少钱
  • CSP-J复赛模拟赛2 王晨旭补题 2025.10.2
  • 理解Consumer<T>
  • Linux:了解Socket编程
  • UE4报错:无法编译项目