日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

HarmonyOS開(kāi)發(fā)案例:【卡片二級(jí)聯(lián)動(dòng)】

jf_46214456 ? 來(lái)源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-06 17:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1 卡片介紹

使用ArkTS語(yǔ)言,實(shí)現(xiàn)一個(gè)導(dǎo)航與內(nèi)容二級(jí)聯(lián)動(dòng)的效果。

2 標(biāo)題

二級(jí)聯(lián)動(dòng)(ArkTS)

3 介紹

介紹了如何基于List組件實(shí)現(xiàn)一個(gè)導(dǎo)航和內(nèi)容的二級(jí)聯(lián)動(dòng)效果。樣例主要包含以下功能:

  1. 切換左側(cè)導(dǎo)航,右側(cè)滾動(dòng)到對(duì)應(yīng)的內(nèi)容。
  2. 滾動(dòng)右側(cè)的內(nèi)容,左側(cè)會(huì)切換對(duì)應(yīng)的導(dǎo)航。

效果如圖所示:

相關(guān)概念

  • [List]:列表包含一系列相同寬度的列表項(xiàng)。適合連續(xù)、多行呈現(xiàn)同類(lèi)數(shù)據(jù),例如圖片和文本。
  • [ListItemGroup]:該組件用來(lái)展示列表item分組,寬度默認(rèn)充滿(mǎn)List組件,必須配合List組件來(lái)使用。

4 環(huán)境搭建

軟件要求

  • [DevEco Studio]版本:DevEco Studio 3.1 Release。
  • OpenHarmony SDK版本:API version 9。

硬件要求

  • 開(kāi)發(fā)板類(lèi)型:[潤(rùn)和RK3568開(kāi)發(fā)板]。
  • OpenHarmony系統(tǒng):3.2 Release。

環(huán)境搭建

完成本篇Codelab我們首先要完成開(kāi)發(fā)環(huán)境的搭建,本示例以RK3568開(kāi)發(fā)板為例,參照以下步驟進(jìn)行:

  1. [獲取OpenHarmony系統(tǒng)版本]:標(biāo)準(zhǔn)系統(tǒng)解決方案(二進(jìn)制)。以3.2 Release版本為例:
  2. 搭建燒錄環(huán)境。
    1. [完成DevEco Device Tool的安裝]
    2. [完成RK3568開(kāi)發(fā)板的燒錄](méi)
  3. 搭建開(kāi)發(fā)環(huán)境。
    1. 開(kāi)始前請(qǐng)參考[工具準(zhǔn)備],完成DevEco Studio的安裝和開(kāi)發(fā)環(huán)境配置。
    2. 開(kāi)發(fā)環(huán)境配置完成后,請(qǐng)參考[使用工程向?qū)創(chuàng)建工程(模板選擇“Empty Ability”)。
    3. 工程創(chuàng)建完成后,選擇使用[真機(jī)進(jìn)行調(diào)測(cè)]。
    4. 鴻蒙開(kāi)發(fā)指導(dǎo)文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

5 代碼結(jié)構(gòu)解讀

本篇Codelab只對(duì)核心代碼進(jìn)行講解,對(duì)于完整代碼,我們會(huì)在gitee中提供。

├──entry/src/main/ets                // 代碼區(qū)
│  ├──common
│  │  └──constants
│  │     └──Constants.ets            // 常量類(lèi)
│  ├──entryability
│  │  └──EntryAbility.ts             // 程序入口類(lèi)
│  ├──pages
│  │  └──IndexPage.ets               // 二級(jí)聯(lián)動(dòng)頁(yè)面入口
│  ├──view
│  │  ├──ClassifyItem.ets            // 課程分類(lèi)組件
│  │  └──CourseItem.ets              // 課程信息組件
│  └──viewmodel                          
│     ├──ClassifyModel.ets           // 導(dǎo)航Model
│     ├──ClassifyViewModel.ets       // 導(dǎo)航ViewModel
│     ├──CourseModel.ets             // 課程內(nèi)容Model
│     └──LinkDataModel.ets           // 數(shù)據(jù)源Model
└──entry/src/main/resources          // 資源文件

`HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789v直接拿`

搜狗高速瀏覽器截圖20240326151344.png

6 二級(jí)聯(lián)動(dòng)實(shí)現(xiàn)

界面整體使用Row組件實(shí)現(xiàn)橫向布局,分為左右兩部分。均使用List組件實(shí)現(xiàn)對(duì)導(dǎo)航和內(nèi)容的數(shù)據(jù)展示,導(dǎo)航部分固定寬度,內(nèi)容部分自適應(yīng)屏幕剩余寬度并用ListItemGroup完成每個(gè)導(dǎo)航下的內(nèi)容布局。

Row() {
  List({ scroller: this.classifyScroller }) {
    ForEach(this.classifyList, (item: ClassifyModel, index: number) = > {
      ListItem() {
        ClassifyItem({
          classifyName: item.classifyName,
          isSelected: this.currentClassify === index,
          onClickAction: () = > this.classifyChangeAction(index, true)
        })
      }
    }, (item: ClassifyModel) = > item.classifyName + this.currentClassify)
  }

  List({ scroller: this.scroller }) {
    ForEach(this.classifyList, (classifyItem: ClassifyModel) = > {
      ListItemGroup({
        header: this.ClassifyHeader(classifyItem.classifyName),
        space: Constants.COURSE_ITEM_PADDING
      }) {
        ForEach(classifyItem.courseList, (courseItem: CourseModel) = > {
          ListItem() {
            CourseItem({ itemStr: JSON.stringify(courseItem) })
          }
        }, courseItem = > courseItem.courseId)
      }
    }, item = > item.classifyId)
  }
  .sticky(StickyStyle.Header)
  .layoutWeight(1)
  .edgeEffect(EdgeEffect.None)
  .onScrollIndex((start: number) = > this.classifyChangeAction(start, false))
}

點(diǎn)擊左側(cè)導(dǎo)航時(shí),右側(cè)內(nèi)容區(qū)域通過(guò)scrollToIndex方法跳轉(zhuǎn)到對(duì)應(yīng)的內(nèi)容頁(yè)面,并改變導(dǎo)航的選中狀態(tài)。同理在滾動(dòng)右側(cè)內(nèi)容的過(guò)程中,如果當(dāng)前展示的ListItemGroup發(fā)生改變時(shí),修改左側(cè)導(dǎo)航的選中狀態(tài),并滾到到對(duì)應(yīng)的導(dǎo)航item。

classifyChangeAction(index: number, isClassify: boolean) {
  if (this.currentClassify !== index) {
    // change the classify status
    this.currentClassify = index;
    if (isClassify) {
      // scroll the course scroll
      this.scroller.scrollToIndex(index);
    } else {
      // scroll the classify scroll
      this.classifyScroller.scrollToIndex(index);
    }
  }
}

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    26

    文章

    6433

    瀏覽量

    121217
  • OpenHarmony
    +關(guān)注

    關(guān)注

    33

    文章

    3977

    瀏覽量

    21378
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    OpenHarmony開(kāi)發(fā)案例:【計(jì)步器卡片

    基于Stage模型實(shí)現(xiàn)帶有卡片的計(jì)步應(yīng)用,用于介紹卡片開(kāi)發(fā)及生命周期實(shí)現(xiàn)。
    的頭像 發(fā)表于 04-15 09:22 ?1490次閱讀
    OpenHarmony<b class='flag-5'>開(kāi)發(fā)案</b>例:【計(jì)步器<b class='flag-5'>卡片</b>】

    OpenHarmony開(kāi)發(fā)案例:【電影卡片

    基于元服務(wù)卡片的能力,實(shí)現(xiàn)帶有卡片的電影應(yīng)用,介紹卡片開(kāi)發(fā)過(guò)程和生命周期實(shí)現(xiàn)。
    的頭像 發(fā)表于 04-15 17:53 ?2103次閱讀
    OpenHarmony<b class='flag-5'>開(kāi)發(fā)案</b>例:【電影<b class='flag-5'>卡片</b>】

    THS3001級(jí)聯(lián)組成放大電路,實(shí)際接通后第二級(jí)有明顯發(fā)熱,為什么?

    實(shí)際接通后第二級(jí)有明顯發(fā)熱。單獨(dú)測(cè)試第一級(jí)沒(méi)問(wèn)題,對(duì)第二級(jí)直接輸入第一級(jí)的輸出相關(guān)參數(shù)依然正常??墒莾蓧K一旦級(jí)聯(lián)
    發(fā)表于 09-06 06:08

    HarmonyOS NEXT應(yīng)用元服務(wù)常見(jiàn)列表操作二級(jí)聯(lián)動(dòng)

    二級(jí)聯(lián)動(dòng)場(chǎng)景 場(chǎng)景描述 通過(guò)左邊一級(jí)列表的選擇,聯(lián)動(dòng)更新右邊二級(jí)列表的數(shù)據(jù),常用于商品分類(lèi)選擇、編輯風(fēng)格等二級(jí)類(lèi)別選擇頁(yè)面。 本場(chǎng)景以商品分
    發(fā)表于 07-02 10:29

    一對(duì)一直播開(kāi)發(fā)PHP源碼

    php、html結(jié)合實(shí)現(xiàn)二級(jí)聯(lián)動(dòng)。一對(duì)一源碼在php開(kāi)發(fā)中我們經(jīng)常會(huì)遇到一些功能需要二級(jí)聯(lián)動(dòng),二級(jí)聯(lián)動(dòng)就是說(shuō)我們?cè)谶x擇一級(jí)select不同的
    發(fā)表于 09-29 16:54

    HarmonyOS服務(wù)卡片快速開(kāi)發(fā)

    HarmonyOS服務(wù)卡片快速開(kāi)發(fā)
    發(fā)表于 06-19 13:52

    HarmonyOS卡片開(kāi)發(fā)--服務(wù)卡片概述

    服務(wù)。 卡片提供方實(shí)例管理模塊:由卡片提供方開(kāi)發(fā)者實(shí)現(xiàn),負(fù)責(zé)對(duì)卡片管理服務(wù)分配的卡片實(shí)例進(jìn)行持久化管理。 通信適配層:由
    發(fā)表于 09-22 14:10

    HarmonyOS流轉(zhuǎn)卡片設(shè)計(jì)規(guī)范分享

    服務(wù)流轉(zhuǎn)是 HarmonyOS 的分布式操作方式。流轉(zhuǎn)能力打破設(shè)備界限,多設(shè)備聯(lián)動(dòng),使原子化服務(wù)可分可合、可流轉(zhuǎn),實(shí)現(xiàn)如郵件跨設(shè)備編輯、多設(shè)備協(xié)同健身、多屏游戲等分布式業(yè)務(wù)。開(kāi)發(fā)者通過(guò)嵌入流轉(zhuǎn)圖標(biāo)
    發(fā)表于 12-15 14:57

    HarmonyOS分享卡片設(shè)計(jì)規(guī)范學(xué)習(xí)分享

    Share 入口圖標(biāo),根據(jù)業(yè)務(wù)特性和體驗(yàn)繼承性,您可以將 Huawei Share 圖標(biāo)作為一級(jí)界面的分享入口,或在二級(jí)界面與其他分享方式并列。為了保證在不同服務(wù)內(nèi)一致的分享體驗(yàn),若需顯示 Huawei
    發(fā)表于 12-16 15:32

    HarmonyOS/OpenHarmony應(yīng)用開(kāi)發(fā)-FA卡片開(kāi)發(fā)體驗(yàn)

    HarmonyOSOpenHarmony應(yīng)用開(kāi)發(fā)-FA卡片開(kāi)發(fā)體驗(yàn).docx示例代碼:https://gitee.com/jltfcloudcn/jump_to/tree/maste
    發(fā)表于 12-06 14:48

    全國(guó)計(jì)算機(jī)二級(jí)試題全集

    全國(guó)計(jì)算機(jī)二級(jí)試題含有從,二級(jí)筆試試題BASIC,筆試試題FORTRAN,1994-2002年的二級(jí)C、二級(jí)Pascal、二級(jí)QBasic、
    發(fā)表于 12-30 10:20 ?27次下載
    全國(guó)計(jì)算機(jī)<b class='flag-5'>二級(jí)</b>試題全集

    華為開(kāi)發(fā)HarmonyOS零基礎(chǔ)入門(mén):15分鐘玩轉(zhuǎn)harmonyOS服務(wù)卡片

    華為開(kāi)發(fā)HarmonyOS零基礎(chǔ)入門(mén):15分鐘玩轉(zhuǎn)harmonyOS服務(wù)卡片,服務(wù)卡片顏值高、擁有服務(wù)直達(dá)功能。
    的頭像 發(fā)表于 10-23 11:40 ?2897次閱讀
    華為<b class='flag-5'>開(kāi)發(fā)</b>者<b class='flag-5'>HarmonyOS</b>零基礎(chǔ)入門(mén):15分鐘玩轉(zhuǎn)<b class='flag-5'>harmonyOS</b>服務(wù)<b class='flag-5'>卡片</b>

    華為開(kāi)發(fā)者分論壇HarmonyOS學(xué)生公開(kāi)課-OpenHarmony Codelabs開(kāi)發(fā)案

    2021華為開(kāi)發(fā)者分論壇HarmonyOS學(xué)生公開(kāi)課-OpenHarmony Codelabs開(kāi)發(fā)案
    的頭像 發(fā)表于 10-24 11:25 ?2621次閱讀
    華為<b class='flag-5'>開(kāi)發(fā)</b>者分論壇<b class='flag-5'>HarmonyOS</b>學(xué)生公開(kāi)課-OpenHarmony Codelabs<b class='flag-5'>開(kāi)發(fā)案</b>例

    HarmonyOS服務(wù)卡片如何換膚

      關(guān)注HarmonyOS的小伙伴肯定對(duì)服務(wù)卡片已經(jīng)很熟悉了。服務(wù)卡片(也簡(jiǎn)稱(chēng)為“卡片”)是FA(FeatureAbility,元服務(wù))的一種界面展示形式,將FA的重要信息或操作前置到
    的頭像 發(fā)表于 02-12 10:28 ?4170次閱讀
    <b class='flag-5'>HarmonyOS</b>服務(wù)<b class='flag-5'>卡片</b>如何換膚

    基于openharmony第三方組件適配移植實(shí)現(xiàn)二級(jí)聯(lián)動(dòng)列表

    項(xiàng)目介紹 項(xiàng)目名稱(chēng):Linkage-RecyclerView 所屬系列:openharmony的第三方組件適配移植 功能:實(shí)現(xiàn)二級(jí)聯(lián)動(dòng)列表 項(xiàng)目移植狀態(tài):主功能完成 調(diào)用差異:無(wú) 開(kāi)發(fā)版本:sdk6
    發(fā)表于 03-30 10:40 ?1次下載
    茌平县| 共和县| 潞城市| 江达县| 隆昌县| 噶尔县| 民勤县| 太保市| 金堂县| 布尔津县| 宁明县| 大洼县| 板桥市| 马关县| 宁晋县| 镇赉县| 达孜县| 章丘市| 乌什县| 林西县| 祁连县| 道真| 库尔勒市| 孟州市| 玛沁县| 山西省| 太谷县| 正宁县| 海城市| 张家港市| 大田县| 青铜峡市| 定远县| 安远县| 赤峰市| 双柏县| 凌云县| 泸溪县| 桐庐县| 诏安县| 拜泉县|