纯血鸿蒙实战开发—如何添加顶部tab页面

1.Tabs组件

Tabs组件的页面组成包含两个部分,分别是TabContent和TabBar。TabContent是内容页,TabBar是导航页签栏.

根据不同的导航类型,布局会有区别,可以分为底部导航、顶部导航、侧边导航,其导航栏分别位于底部、顶部和侧边

2.示例代码

 @Entry
@Component
struct TabsPage {
    @State private selectedIndex: number = 0;
    private controller: TabsController = new TabsController()
    private itemList = [
        "关注",
        "视频",
        "游戏",
        "数码",
        "科技",
        "影视",
        "体育",
    ]

    build() {
        Column() {
            //BarPosition.Start
            //BarPosition.End
            Tabs({ barPosition: BarPosition.Start, controller: this.controller }) {

                ForEach(this.itemList, (item) => {
                    TabContent() {
                        Column() {
                            Text(item)
                                .fontSize(24)
                                .fontColor(Color.White)
                        }
                        .width('100%')
                        .height('100%') // 如果需要垂直居中,确保高度设置正确
                        .alignItems(HorizontalAlign.Center) // 水平居中子组件
                        .justifyContent(FlexAlign.Center) // 垂直居中子组件
                        .backgroundColor(Color.Green)
                    }
                    .tabBar({
                        text: item
                    })

                })
            }
            // .vertical(true) //开启侧边导航栏
            // .barWidth(100) //开启侧边导航栏,设置barWidth
            // .barHeight(300) //开启侧边导航栏,设置barHeight
            .barWidth('100%') // 开启顶部/底部导航栏,设置TabBar宽度
            .barHeight(60) // 开启顶部/底部导航栏,设置TabBar高度
            .width('100%') // 设置Tabs组件宽度
            .height('100%') // 设置Tabs组件高度
            .backgroundColor(0xffADD8E6) // 设置Tabs组件背景颜色
            .onChange((index: number) => {
                this.selectedIndex = index;
                console.info(`${this.selectedIndex} `);
            }
            )

        }
        .width('100%')
        .height('100%')

    }
}

3.效果

开启顶部导航的情况
.barWidth('100%') // 开启顶部/底部导航栏,设置TabBar宽度
.barHeight(60) // 开启顶部/底部导航栏,设置TabBar高度

效果如下

开启侧边导航的情况
 .vertical(true) //开启侧边导航栏,默认是不开启侧边导航栏的
 .barWidth(100) //开启侧边导航栏,设置barWidth
 .barHeight(300) //开启侧边导航栏,设置barHeight

效果如下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/679283.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

windows上安装MongoDB,springboot整合MongoDB

上一篇文章已经通过在Ubuntu上安装MongoDB详细介绍了MongoDB的各种命令用法。 Ubuntu上安装、使用MongoDB详细教程https://blog.csdn.net/heyl163_/article/details/133781878 这篇文章介绍一下在windows上安装MongoDB,并通过在springboot项目中使用MongoDB记录用户…

每天五分钟计算机视觉:基于KNN算法完成图片分类任务

本文重点 在数字化和智能化的时代,图片分类作为计算机视觉领域的重要任务之一,已经广泛应用于各种场景,如安防监控、医疗诊断、智能推荐等。传统的图片分类方法往往需要复杂的手工特征提取和繁琐的分类器设计,而机器学习算法的引入为图片分类带来了不同的思路。 KNN算法概…

无人机航迹规划:人工原生动物优化器(Artificial Protozoa Optimizer ,APO)求解无人机路径规划,提供MATLAB代码

一、无人机模型介绍 单个无人机三维路径规划问题及其建模_无人机路径规划场景建模-CSDN博客 参考文献: [1]胡观凯,钟建华,李永正,黎万洪.基于IPSO-GA算法的无人机三维路径规划[J].现代电子技术,2023,46(07):115-120 二、人工原生动物优化算法APO求解无人机路径规…

什么台灯对眼睛好?一文给你分享具体什么台灯对眼睛好!

什么台灯对眼睛好?随着学生们最近陆续返校,家长们和孩子们都忙于开学初的准备工作,而眼睛的健康自然也是他们考虑的一部分。这也是护眼台灯在近年来变得非常普及的原因之一。我自己一直是一个近视的人,而且日常用眼时间也相当长。…

神经网络与深度学习——第15章 序列生成模型

本文讨论的内容参考自《神经网络与深度学习》https://nndl.github.io/ 第15章 序列生成模型,习题还没做先存在这里。 序列生成模型 序列概率模型 序列生成 N元统计模型 深度序列模型 模型结构 嵌入层 特征层 输出层 参数学习 评价方法 困惑度 BLEU算法 ROUGE算法 序…

「网络编程」基于 UDP 协议实现回显服务器

🎇个人主页:Ice_Sugar_7 🎇所属专栏:计网 🎇欢迎点赞收藏加关注哦! 实现回显服务器 🍉socket api🍉回显服务器🍌实现🥝服务器🥝客户端 &#x1f3…

插入mysql报错:Incorrect string value: ‘\xF0\xAC\x8C\x97\xE5\x9E...‘

原因分析 这个错误通常发生在使用MySQL数据库时,尝试将包含四字节UTF-8字符(通常表示为Unicode码点大于UFFFF的字符)插入到一个不支持这种字符的字符集列中。一般在插入睡眠emoji表情时容易遇到 解决 -- 设置数据库编码utf8mb4 ALTER DAT…

伦敦金当前行情你真的看懂了吗?

5月中旬,伦敦金价将历史新高再次改写至2450美元/盎司,虽然随后两周出现了反复回落的走势,但整体的升浪仍然受到50天指数移动平均线的支撑。有分析机构预计,随着美联储美联储开始放缓缩表和开启降息周期,来年的伦敦金价…

Spring Boot自动配置原理和应用

我们知道,基于Spring Boot,我们只需要在类路径中引入一组第三方框架的starter组件,就能在Spring容器中使用这些框架所提供的各项功能。这在当下的开发过程中已经习以为常,但在Spring Boot还没有诞生之前却是不可想象的。如果我们使…

【Text2SQL 论文】QDecomp:探索 CoT-style 的 prompt 来解决 Text2SQL

论文:Exploring Chain of Thought Style Prompting for Text-to-SQL ⭐⭐⭐⭐ EMNLP 2023, arXiv:2305.14215 一、论文速读 本文通过对 LLM 使用 CoT-style 的 prompting 方法来解决 Text2SQL 问题,试图回答下面两个问题: 哪种 prompting s…

英伟达GPU架构加速狂飙

NVIDIA首席执行官黄仁勋在台湾大学体育馆发表主题演讲,展示了新一代Rubin架构,这是NVIDIA加速推出新架构的最新成果。 在讨论NVIDIA下一代架构时,黄仁勋提到了Blackwell Ultra GPU,并表示它可能会继续升级。然后他透露&#xff0c…

Zoom | saas企业分销裂变的典范

提到视频通讯,相信大家不会陌生,国外有Skype、Google meeting、Facetime,国内有腾讯会议、钉钉,为什么在如此众多竞争对手的情况下,Zoom能够一马当先,成为行业先锋? 一、公司简介 Zoom是集视频…

【电路笔记】-Sallen-Key滤波器

Sallen-Key滤波器 Sallen-Key 滤波器拓扑用作实现高阶有源滤波器的构建块。 1、概述 Sallen-Key 滤波器设计是一种二阶有源滤波器拓扑,我们可以将其用作实现高阶滤波器电路的基本构建块,例如低通 (LPF)、高通 (HPF) 和带通 ( BPF)滤波器电路。 正如我们在本滤波器部分中…

反激电源的类型与特点

主要分为 1 固定频率(CCMDCM) 2 可变频率控制(CRM电流临界模式) 这三种模式是很好辨别的,首先我们看左边的连续模式,Vds能看到他有一些尖峰毛刺,这是场效应管关闭的时候,LRC谐振导…

揭秘FL Studio21.2.8中文版一键解锁音乐创作新境界!

在音乐制作的广阔天地里,随着技术的不断进步和数字音频工作站(DAW)软件的普及,越来越多的音乐爱好者和专业制作人开始涉足音乐创作的奇妙旅程。其中,FL Studio以其强大的功能、直观的操作界面和丰富的音色资源&#xf…

用户管理的小demo--登录校检

目录 在user里面 装session 1、 LoginServlet.java 2、LoginFilter.java 3、配置路径 结果: 在user里面 装session 1、 LoginServlet.java package com.by.servlet;import com.by.pojo.User; import com.by.service.UserService; import com.by.service.impl…

云原生环境下GPU算力调度发展分析

云原生环境下GPU算力调度深度分析 概述: 云原生时代,GPU算力调度与管理备受瞩目,成为企业和云服务提供商关注的焦点,助力AI、深度学习、高性能计算等领域,满足对GPU资源的迫切需求。 容器化与编排: Kube…

LLM的基础模型4:初识Embeddings

大模型技术论文不断,每个月总会新增上千篇。本专栏精选论文重点解读,主题还是围绕着行业实践和工程量产。若在某个环节出现卡点,可以回到大模型必备腔调或者LLM背后的基础模型新阅读。而最新科技(Mamba,xLSTM,KAN)则提…

2024.5.30

思维导图 代码 #include <iostream>using namespace std; class Rect { private:int width;int height; public:void init(int w,int h){width w;height h;}void set_w(int w){width w;}void set_h(int h){height h;}void show(){int zhou (width height) * 2;int…

vue-router 源码分析——2. router-link 组件是如何实现导航的

这是对vue-router 3 版本的源码分析。 本次分析会按以下方法进行&#xff1a; 按官网的使用文档顺序&#xff0c;围绕着某一功能点进行分析。这样不仅能学习优秀的项目源码&#xff0c;更能加深对项目的某个功能是如何实现的理解。这个对自己的技能提升&#xff0c;甚至面试时…