HarmonyOS組件之Tabs

Tabs

1.1概念

  1. Tabs 視圖切換容器,通過相適應的頁簽進行視圖頁面的切換的容器組件
  2. 每一個頁簽對應一個內容視圖
  3. Tabs擁有一種唯一的子集元素TabContent

1.2子組件

  1. 不支持自定義組件為子組件,僅可包含子組件TabContent,以及渲染控制類型 if/else 和 ForEach 并且 if/else 和ForEach下頁僅支持TabContent,不支持自定義組件

1.2.1TabContent

  1. 有幾個頁簽就寫入幾個TabContent
  2. 和build一樣,只能有唯一一個子組件

1.3參數(接口)

Tabs(value?: {barPosition?: BarPosition, index?: number, controller?: TabsController})

   Tabs({//默認的頁面索引index: 0, // 頁簽的位置barPosition: BarPosition.End,// controller: 控制器,控制頁簽樣式controller: this.TabController}) {//有幾個頁簽就寫幾個TabContent//和build一樣只能有一個唯一的子組件TabContent() {}}
參數名參數類型
barPositionBarPosition
indexNumber
controllerTabsController
  • barPosition:設置頁簽位置,(配合vertical屬性一并使用)
  • index:起始索引,設置當前視圖頁簽的索引,默認是0
  • controller:Tabs控制器

1.3.1 BarPosition枚舉

名稱描述
Startvertical屬性方法設置為true時,頁簽位于容器左側;
vertical屬性方法設置為false時,頁簽為容器頂部
Endvertical屬性方法設置為true時,頁簽位于容器右側;
vertical屬性方法設置為false時,頁簽為容器底部

注意:屬性vertical(value:boolean):vertical默認值為false,表示內容頁和導航欄垂直方向排列

1.3.2 Controller 頁面控制器

  • 自定義:

    private TabController: TabsController = new TabsController()
    

1.4屬性

vertical ( boolean )

  • 默認值:false,設置頁簽位置

scrollable : boolean

  • 設置是否可以通過滑動頁面進行頁面的切換

BarMode

  • 設置TabBar布局模式
    • fixed
    • Scrollable:每一個TabBar均使用實際的布局寬度,超過總長度(橫向的tabs的barWidth,縱向的tabs的barHeight)可滑動

2.1代碼

@Entry
@Component
struct Test01 {@State message: string = 'Hello World';// 當前頁簽的索引@State CurrentIndex: number = 0private TabController: TabsController = new TabsController()private scroller: Scroller = new Scroller();/**滾動條的滾動范圍是父級的高度* 滾動條的高度 =父級的高度/x                       x=內容區域的高度/父級的高度* Scroll*    可滾動的容器組件,*    當子組件的布局尺寸超過父組件的尺寸時,內容可以滾動*    滾動的前提:主軸方向上的大小小于內容大小*  參數:*    scroller:可滾動組件的控制器,用于與可滾動的組件進行綁定**  屬性:*    scrollable:設置滾動的方向,默認值ScrollDirection.Vertical*    scrollBar:設置滾動條的狀態,默認值BarState.Auto*      on    默認開啟      off:默認關閉      Auto:視情況出現*    scrollBarWidth();滾動條的寬度*    scrollBarColor():設置滾動條顏色**    建議:在最外層用Scroll,防止內容超出頁面** */build() {Column() {Scroll(){Row() {this.tab('賬號登錄', 0)this.tab('短信登錄', 1)this.tab('短信登錄', 2)this.tab('短信登錄', 3)}}.scrollable(ScrollDirection.Horizontal)// tab控制器Tabs({ controller: this.TabController }) {TabContent() {Column() {Scroll() {Text('第一頁').backgroundColor(Color.Red).height(10000)}}.width('100%').height(500)}.backgroundColor(Color.Pink)TabContent() {Text('第二頁')}}// .barWidth().barHeight(0)// 捕獲視圖的的行為 onChange只有一個參數,對于不同的組件具有不同的意義// 該index表示為當前視圖的索引.onChange((index) => {this.CurrentIndex = index})}}@Buildertab(tabName: string, tabIndex: number) {Row() {Text(tabName).border({width: { bottom: this.CurrentIndex === tabIndex ? 2 : 0 },color: Color.Blue})}.onClick(() => {// 點擊目標頁簽后,讓當前的頁簽索引等于目標頁簽的索引this.CurrentIndex = tabIndexthis.TabController.changeIndex(this.CurrentIndex)}).width(120).height(30)}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/70279.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/70279.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/70279.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

華為FusionCompute虛擬化平臺

一、華為FusionCompute虛擬化套件介紹 華為FusionCompute虛擬化套件是業界領先的虛擬化解決方案,能夠幫助客戶帶來如下的價值,從而大幅提升數據中心基礎設施的效率。 幫助客戶提升數據中心基礎設施的資源利用率;幫助客戶成倍縮短業務上線周期…

使用apt-rdepends制作軟件離線deb安裝包

使用apt-rdepends制作軟件離線deb安裝包 除基礎軟件外,還要獲取軟件依賴包。 依賴包工具安裝 apt-get install apt-rdependsapt-rdepends工具使用 使用apt-rdepends工具,遞歸方式分析軟件依賴,下載軟件包本體,和依賴包。制作時…

【ISO 14229-1:2023 UDS診斷(ECU復位0x11服務)測試用例CAPL代碼全解析⑩】

ISO 14229-1:2023 UDS診斷【ECU復位0x11服務】_TestCase10 作者:車端域控測試工程師 更新日期:2025年02月18日 關鍵詞:UDS診斷協議、ECU復位服務、0x11服務、ISO 14229-1:2023 TC11-010測試用例 用例ID測試場景驗證要點參考條款預期結果TC…

什么是Scaling Laws(縮放定律);DeepSeek的Scaling Laws

什么是Scaling Laws(縮放定律) Scaling Laws(縮放定律)在人工智能尤其是深度學習領域具有重要意義,以下是相關介紹及示例: 定義與內涵 Scaling Laws主要描述了深度學習模型在規模(如模型參數數量、訓練數據量、計算資源等)不斷擴大時,模型性能與這些規模因素之間的…

大一計算機的自學總結:前綴樹(字典樹、Trie樹)

前言 前綴樹&#xff0c;又稱字典樹&#xff0c;Trie樹&#xff0c;是一種方便查找前綴信息的數據結構。 一、字典樹的實現 1.類描述實現 #include <bits/stdc.h> using namespace std;class TrieNode { public:int pass0;int end0;TrieNode* nexts[26]{NULL}; };Tri…

【存儲中間件API】MySQL、Redis、MongoDB、ES常見api操作及性能比較

常見中間件api操作及性能比較 ?? MySQL crud操作?? maven依賴?? 配置?? 定義實體類?? 常用api ?? Redis crud操作?? maven依賴?? 配置?? 常用api ?? MongoDB crud操作?? maven依賴?? 配置文件?? 定義實體類?? MongoDB常用api ?? ES crud操作 ??…

51單片機入門_10_數碼管動態顯示(數字的使用;簡單動態顯示;指定值的數碼管動態顯示)

接上篇的數碼管靜態顯示&#xff0c;以下是接上篇介紹到的動態顯示的原理。 動態顯示的特點是將所有位數碼管的段選線并聯在一起&#xff0c;由位選線控制是哪一位數碼管有效。選亮數碼管采用動態掃描顯示。所謂動態掃描顯示即輪流向各位數碼管送出字形碼和相應的位選&#xff…

C++入門《類和對象》之《運算符重載》詳解|成員函數重載/非成員函數重載

C 中&#xff0c;運算符重載是一種特殊的函數&#xff0c;它允許程序員為自定義的數據類型&#xff08;如類和結構體&#xff09;重新定義運算符的行為&#xff0c;使得這些運算符能夠像處理內置數據類型一樣處理自定義類型的數據。下面將從多個方面詳細講解 C 里的運算符重載。…

Salesforce 檢索Layout的設定

做了許多Object&#xff0c;卻想不起來怎么設置我的Listview的項目了。 問題&#xff1a; salesforce 最近參照したオブジェクト 表示項目を変更したいですが、「検索レイアウト」の選択メニューが該當オブジェクトのオブジェクトマネージャーから出てないです。 解決方法&am…

SECS/GEM300應用案例參考

GEM300 是一種用于半導體制造領域的通信協議標準&#xff0c;主要用于支持 300mm 晶圓制造的自動化生產。以下是 GEM300 的一些具體應用案例&#xff1a; 1. 半導體設備集成 設備制造商的應用&#xff1a;廣州金南瓜科技有限公司通過 GEM300 SDK&#xff0c;幫助國內多個半導體…

win10系統上的虛擬機安裝麒麟V10系統提示找不到操作系統

目錄預覽 一、問題描述二、原因分析三、解決方案四、參考鏈接 一、問題描述 win10系統上的虛擬機安裝麒麟V10系統提示找不到操作系統&#xff0c;報錯&#xff1a;Operating System not found 二、原因分析 國產系統&#xff0c;需要注意的點&#xff1a; 需要看你的系統類…

情書網源碼 情書大全帝國cms7.5模板

源碼介紹 帝國cms7.5仿《情書網》模板源碼&#xff0c;同步生成帶手機站帶采集。適合改改做文學類的網站。 效果預覽 源碼獲取 情書網源碼 情書大全帝國cms7.5模板

C語言題目:鏈表數據求和操作

題目描述 讀入10個復數&#xff0c;建立對應鏈表&#xff0c;然后求所有復數的和。 輸入格式 無 輸出格式 無 樣例輸入 1 2 1 3 4 5 2 3 3 1 2 1 4 2 2 2 3 3 1 1 樣例輸出 2323i 代碼功能概述 createNode 函數&#xff1a; 創建一個包含 10 個復數節點的鏈表。 每個…

STM32 ADC介紹(硬件原理篇)

目錄 背景 AD轉換器 采樣與保持 量化 編碼 AD轉換器轉換原理 DA轉換原理 AD轉換原理 1.逐次逼近型AD轉換器 2.并聯比較型AD轉換器 編碼器 同步D觸發器和邊沿D觸發器 基本RS觸發器 同步RS觸發器 同步D觸發器 邊沿型D觸發器&#xff08;維持-阻塞D觸發器&#xff…

公網遠程家里局域網電腦過程詳細記錄,包含設置路由器。

由于從校內遷居小區,校內需要遠程控制訪問小區內個人電腦,于是早些時間剛好自己是電信寬帶,可以申請公網ipv4不需要花錢,所以就打電話直接申請即可,申請成功后訪問光貓設備管理界面192.168.1.1,輸入用戶名密碼登錄超管(密碼是網上查下就有了)設置了光貓為橋接模式,然后…

流行編程語言全解析:優勢、應用與短板

Python&#xff1a; 優勢 Python 以其簡潔、易讀的語法聞名&#xff0c;新手能快速上手。豐富的庫和框架&#xff0c;能極大地提高開發效率。 適用領域 數據科學與分析&#xff1a;處理和分析大規模數據集&#xff0c;進行數據可視化。典型示例&#xff1a;Google 用 Pytho…

統信服務器操作系統V20 1070A 安裝docker新版本26.1.4

應用場景&#xff1a; 硬件/整機信息&#xff1a;x86平臺、深信服超融合平臺 OS版本信息&#xff1a;統信V20 1070a 1.獲取docker二進制包 鏈接: https://pan.baidu.com/s/1SukBlra0mQxvslTfFakzGw?pwd5s5y 提取碼: 5s5y tar xvf docker-26.1.4.tgz groupadd docker ch…

在 Vue 3 中使用 Lottie 動畫:實現一個加載動畫

在現代前端開發中&#xff0c;動畫是提升用戶體驗的重要元素之一。Lottie 是一個流行的動畫庫&#xff0c;它允許我們使用 JSON 文件來渲染高質量的動畫。本文將介紹如何在 Vue 3 項目中集成 Lottie 動畫&#xff0c;并實現一個加載動畫效果。 如果對你有幫助請幫忙點個&#x…

【Spring】Spring配置文件

目錄 ?什么是配置文件&#xff1f; 配置文件的作用 SpringBoot配置文件 配置文件格式 配置文件的優先級 properties配置文件說明 properties基本語法 讀取配置文件 properties缺點 yml配置文件說明 yml基本語法 使用yml連接數據庫 yml配置不同數據類型及null 注意…

藍橋杯篇---實時時鐘 DS1302

文章目錄 前言特點簡介1.低功耗2.時鐘/日歷功能3.32字節的額外RAM4.串行接口 DS1302 引腳說明1.VCC12.VCC23.GND4.CE5.I/O6.SCLK DS1302 寄存器1.秒寄存器2.分鐘寄存器3.小時寄存器4.日寄存器5.月寄存器6.星期寄存器7.年寄存器8.控制寄存器 DS1302 與 IAP25F2K61S2 的連接1.CE連…