91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

鴻蒙開(kāi)發(fā)實(shí)戰(zhàn)-運(yùn)動(dòng)app開(kāi)發(fā)

jf_46214456 ? 來(lái)源: jf_46214456 ? 作者: jf_46214456 ? 2024-02-01 16:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

主要開(kāi)發(fā)內(nèi)容

開(kāi)發(fā)準(zhǔn)備

想要實(shí)現(xiàn)以下功能的話,需要學(xué)習(xí)“Tabs”,“TabContent”,“Row”,“Column”,等等相關(guān)技術(shù)。

主頁(yè)

靜坐頁(yè)面
除此之外,還需要先準(zhǔn)備8張圖標(biāo)的圖片以及應(yīng)用開(kāi)發(fā)所需要的圖片。

tabs功能實(shí)現(xiàn)

應(yīng)用中的Tabs功能通過(guò)采用了TabsController來(lái)實(shí)現(xiàn)。TabsController是一個(gè)在鴻蒙開(kāi)發(fā)框架中用于管理Tabs的控制器,它負(fù)責(zé)處理Tabs之間的切換邏輯。以下是實(shí)現(xiàn)Tabs功能的關(guān)鍵代碼部分:

// 定義TabsController實(shí)例
private controller: TabsController = new TabsController()
// ...
// 在build方法中使用Tabs組件,并傳入controller
build() {
  Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
    Tabs({ controller: this.controller }) {
      // ...(省略Tabs中的內(nèi)容)
    }
  }
}

在上述代碼中,通過(guò)創(chuàng)建一個(gè)TabsController實(shí)例并賦值給controller成員變量,將該控制器傳遞給Tabs組件。Tabs組件會(huì)根據(jù)傳入的控制器進(jìn)行管理,從而實(shí)現(xiàn)Tabs之間的切換。

關(guān)于TabsController的具體使用,我們可以看到定義了多個(gè)方法,如IndexClick、messageClick、myClick和meClick等。這些方法分別用于處理不同Tabs的點(diǎn)擊事件,并在點(diǎn)擊時(shí)調(diào)用controller.changeIndex(index)來(lái)切換到對(duì)應(yīng)的Tabs。通過(guò)TabsController的管理和控制,實(shí)現(xiàn)了在MyNewsIndex應(yīng)用中不同Tabs之間的切換效果。用戶點(diǎn)擊不同的Tabs時(shí),調(diào)用相應(yīng)的方法切換到對(duì)應(yīng)的內(nèi)容,從而提供了用戶友好的導(dǎo)航和瀏覽體驗(yàn)。Tabs功能的實(shí)現(xiàn)使得用戶可以方便地切換到不同的運(yùn)動(dòng)分類或內(nèi)容頁(yè)面,增強(qiáng)了應(yīng)用的可用性。

@Entry
@Component
struct MyNewsIndex {
  private controller: TabsController = new TabsController()
  @State SelectPos:number=0;
  public IndexClick(){
    this.SelectPos=0;
    this.controller.changeIndex(0)
  }
  public messageClick(){
    this.SelectPos=1;
    this.controller.changeIndex(1)
  }
  public myClick(){
    this.SelectPos=2;
    this.controller.changeIndex(2)
  }
  public meClick(){
    this.SelectPos=3;
    this.controller.changeIndex(3)
  }

  build() {
    Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
      Tabs({ controller: this.controller }) {
        TabContent() {
          Column() {
            zhu()
          }

        }
        .tabBar()
        TabContent() {
          Column() {
            jingzuo()
          }

        }
        .tabBar()
        TabContent() {
          Text("我men的")
            .width('100%').height('100%')
            .fontSize(50)
            .textAlign(TextAlign.Center)
            .fontColor(Color.White)
            .backgroundColor(0X6495ED)
        }
        .tabBar()
        TabContent() {
          Text("我")
            .width('100%').height('100%')
            .fontSize(50)
            .textAlign(TextAlign.Center)
            .fontColor(Color.White)
            .backgroundColor(Color.Black)

        }
        .tabBar()
      }
      .scrollable(false)
      .barHeight(0)
      .animationDuration(0)

底部導(dǎo)航欄

通過(guò)Row和Column以及Text,Image等組件,實(shí)現(xiàn)了底部的導(dǎo)航欄。四個(gè)不同的圖標(biāo)分別代表主頁(yè)、消息、我的、我,通過(guò)點(diǎn)擊不同圖標(biāo),用戶可以快速切換到對(duì)應(yīng)的頁(yè)面,提升用戶友好性。以下是參考代碼:

Row() {
        Column(){
          Image((this.SelectPos==0?$r('app.media.yundong1'):$r('app.media.yundong')))
            .width(30)
            .height(30)
            .margin(12)

        }
        .layoutWeight(1)

        .height("100%")
        .onClick(this.IndexClick.bind(this))

        Column(){
          Image((this.SelectPos==1?$r('app.media.gangling1'):$r("app.media.gangling")))
            .width(35)
            .height(30)
            .margin(12)

        }
        .layoutWeight(1)

        .height("100%")
        .onClick(this.messageClick.bind(this))

        Column(){
          Image((this.SelectPos==2?$r('app.media.zhidao1'):$r('app.media.zhidao')))
            .width(30)
            .height(30)
            .margin(12)

        }
        .layoutWeight(1)

        .height("100%")
        .onClick(this.myClick.bind(this))

        Column(){
          Image((this.SelectPos==3?$r('app.media.me1'):$r('app.media.me')))
            .width(30)
            .height(30)
            .margin(12)
        }
        .layoutWeight(1)

        .height("100%")
        .onClick(this.meClick.bind(this))
      }
      .alignItems(VerticalAlign.Bottom)
      .width('100%')
      .height(50)
      .margin({top:0,right:0,bottom:10,left:0})
    }
    .width('100%')
    .height('100%')
  }
}

總結(jié)

本項(xiàng)目使用鴻蒙框架的代碼結(jié)構(gòu)清晰且容易理解。通過(guò)引入頁(yè)面組件(zhu和jingzuo)以及使用裝飾器(@Entry和@Component)來(lái)定義組件,代碼使得組件的結(jié)構(gòu)和布局一目了然,用戶可以輕松切換到不同的運(yùn)動(dòng)分類,包括主頁(yè)、精選等,還提供了用戶友好的界面導(dǎo)航,使用戶能夠快速找到符合個(gè)人興趣的運(yùn)動(dòng)內(nèi)容,除此之外,本項(xiàng)目通過(guò)鴻蒙采用了靈活的Flex布局,確保在不同設(shè)備上都能夠?qū)崿F(xiàn)良好的自適應(yīng)效果。

其次,鴻蒙框架提供了一系列的布局和樣式管理工具,如Flex、Column、Tabs等,使得頁(yè)面的布局和樣式定義更加方便。這種靈活性使得開(kāi)發(fā)者可以更容易地創(chuàng)建各種復(fù)雜的頁(yè)面布局,同時(shí)保持代碼的簡(jiǎn)潔性。

審核編輯 黃宇

聲明:本文內(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)投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4971

    瀏覽量

    74040
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    2969

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    M4-R1 開(kāi)源鴻蒙(OpenHarmory)開(kāi)發(fā)板丨串口調(diào)試助手實(shí)戰(zhàn)案例

    支持與高集成度設(shè)計(jì),成為開(kāi)發(fā)者體驗(yàn)與學(xué)習(xí)鴻蒙系統(tǒng)的理想平臺(tái)。無(wú)論是智慧家居、教學(xué)實(shí)驗(yàn),還是設(shè)備通信,M4-R1都能提供穩(wěn)定可靠的開(kāi)發(fā)環(huán)境。本次分享的實(shí)戰(zhàn)案例——串口
    的頭像 發(fā)表于 12-31 11:16 ?8729次閱讀
    M4-R1 開(kāi)源<b class='flag-5'>鴻蒙</b>(OpenHarmory)<b class='flag-5'>開(kāi)發(fā)</b>板丨串口調(diào)試助手<b class='flag-5'>實(shí)戰(zhàn)</b>案例

    【HarmonyOS 5】金融應(yīng)用開(kāi)發(fā)鴻蒙組件實(shí)踐

    【HarmonyOS 5】金融應(yīng)用開(kāi)發(fā)鴻蒙組件實(shí)踐 ##鴻蒙開(kāi)發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財(cái)#
    的頭像 發(fā)表于 07-11 18:20 ?992次閱讀
    【HarmonyOS 5】金融應(yīng)用<b class='flag-5'>開(kāi)發(fā)</b><b class='flag-5'>鴻蒙</b>組件實(shí)踐

    鴻蒙5開(kāi)發(fā)寶藏案例分享---一多開(kāi)發(fā)實(shí)例(音樂(lè))

    各位開(kāi)發(fā)者小伙伴們好呀!今天咱們來(lái)點(diǎn)硬核干貨!最近在鴻蒙文檔中心挖到一座“金礦”——官方竟然暗藏了100+實(shí)戰(zhàn)案例,從分布式架構(gòu)到交互動(dòng)效優(yōu)化應(yīng)有盡有!這些案例不僅藏著華為工程師的私房技巧,還直接
    的頭像 發(fā)表于 06-30 11:54 ?786次閱讀

    鴻蒙5開(kāi)發(fā)寶藏案例分享---性能體驗(yàn)設(shè)計(jì)

    ;性能優(yōu)化\"關(guān)鍵詞! **如果大家在實(shí)戰(zhàn)中遇到卡頓難題,歡迎在評(píng)論區(qū)交流~ 也歡迎關(guān)注我,后續(xù)會(huì)持續(xù)分享鴻蒙開(kāi)發(fā)實(shí)戰(zhàn)技巧! **? 希望這篇接地氣的總結(jié)能幫你避開(kāi)性能深坑!如果覺(jué)得有
    發(fā)表于 06-12 16:45

    鴻蒙5開(kāi)發(fā)寶藏案例分享---埋點(diǎn)開(kāi)發(fā)實(shí)戰(zhàn)指南

    鴻蒙埋點(diǎn)開(kāi)發(fā)寶藏指南:官方案例實(shí)戰(zhàn)解析,輕松搞定數(shù)據(jù)追蹤! 大家好呀!我是HarmonyOS開(kāi)發(fā)路上的探索者。最近在折騰應(yīng)用埋點(diǎn)時(shí),意外發(fā)現(xiàn)了鴻蒙
    發(fā)表于 06-12 16:30

    鴻蒙5開(kāi)發(fā)寶藏案例分享---PC開(kāi)發(fā)案例解析

    鴻蒙PC/2in1開(kāi)發(fā)寶藏指南:官方案例實(shí)戰(zhàn)解析 大家好呀! 最近在折騰鴻蒙的PC/2in1應(yīng)用開(kāi)發(fā),才發(fā)現(xiàn)官方文檔里藏了一堆超實(shí)用的案例!
    發(fā)表于 06-12 16:07

    鴻蒙5開(kāi)發(fā)寶藏案例分享---Pura X開(kāi)發(fā)案例分享

    ?** 鴻蒙寶藏案例分享:Pura X 外屏開(kāi)發(fā)實(shí)戰(zhàn)解析** 大家好!我是你們的鴻蒙開(kāi)發(fā)小伙伴。今天在翻閱官方文檔時(shí),意外發(fā)現(xiàn)了華為藏著的\
    發(fā)表于 06-12 11:47

    使用DevEcoStudio 開(kāi)發(fā)、編譯鴻蒙 NEXT_APP 以及使用中文插件

    # 使用DevEcoStudio 開(kāi)發(fā)、編譯鴻蒙 NEXT_APP 以及使用中文插件 #鴻蒙開(kāi)發(fā)工具 #DevEco Studio ##
    發(fā)表于 06-11 17:18

    鴻蒙5開(kāi)發(fā)寶藏案例分享---一多開(kāi)發(fā)實(shí)例(游戲)

    ?【開(kāi)發(fā)者必看】鴻蒙隱藏寶箱大公開(kāi)!這些實(shí)戰(zhàn)案例讓你的開(kāi)發(fā)效率翻倍! 哈嘍各位開(kāi)發(fā)者小伙伴!今天要和大家分享一個(gè)讓我拍大腿的發(fā)現(xiàn)——原來(lái)
    發(fā)表于 06-03 18:22

    鴻蒙5開(kāi)發(fā)寶藏案例分享---一多開(kāi)發(fā)實(shí)例(地圖導(dǎo)航)

    ? 鴻蒙開(kāi)發(fā)隱藏寶藏大公開(kāi)!手把手教你玩轉(zhuǎn)\"一多\"地圖導(dǎo)航案例 ? 大家好呀!我是你們的老朋友,今天要給大家扒一扒鴻蒙官方文檔里那些\"藏得深\"的實(shí)戰(zhàn)
    發(fā)表于 06-03 16:17

    鴻蒙5開(kāi)發(fā)寶藏案例分享---一多開(kāi)發(fā)實(shí)例(旅行訂票)

    ? 鴻蒙開(kāi)發(fā)寶藏大發(fā)現(xiàn)!一多開(kāi)發(fā)實(shí)戰(zhàn)案例解析(旅行訂票篇) 大家好!今天在翻鴻蒙開(kāi)發(fā)者文檔時(shí),意
    發(fā)表于 06-03 16:16

    鴻蒙5開(kāi)發(fā)寶藏案例分享---一多開(kāi)發(fā)實(shí)例(長(zhǎng)視頻)

    【?鴻蒙開(kāi)發(fā)寶藏案例大起底!原來(lái)官方藏了這么多干貨!】 大家好呀~最近在折騰鴻蒙應(yīng)用開(kāi)發(fā)的時(shí)候,意外發(fā)現(xiàn)了官方文檔里藏著一堆超實(shí)用的開(kāi)發(fā)案例
    發(fā)表于 06-03 15:58

    鴻蒙5開(kāi)發(fā)寶藏案例分享---折疊屏懸停態(tài)開(kāi)發(fā)實(shí)踐

    ?【鴻蒙折疊屏開(kāi)發(fā)寶藏指南】原來(lái)官方藏了這么多好東西!手把手教你玩轉(zhuǎn)懸停態(tài)開(kāi)發(fā)**?** Hey小伙伴們!我是你們的老朋友XX,最近在肝鴻蒙折疊屏項(xiàng)目時(shí),意外挖到了官方文檔里的隱藏寶藏
    發(fā)表于 06-03 12:04

    鴻蒙北向開(kāi)發(fā)OpenHarmony5.0 DevEco Studio開(kāi)發(fā)工具安裝與配置

    本文介紹OpenHarmony5.0 DevEco Studio開(kāi)發(fā)工具安裝與配置,鴻蒙北向開(kāi)發(fā)入門(mén)必備!由觸覺(jué)智能Purple Pi OH鴻蒙開(kāi)發(fā)
    的頭像 發(fā)表于 03-28 18:05 ?1659次閱讀
    <b class='flag-5'>鴻蒙</b>北向<b class='flag-5'>開(kāi)發(fā)</b>OpenHarmony5.0 DevEco Studio<b class='flag-5'>開(kāi)發(fā)</b>工具安裝與配置

    鴻蒙海報(bào)編輯器APP,分享端云一體化開(kāi)發(fā)的經(jīng)驗(yàn)!

    的編輯器,可以用來(lái)自己平時(shí)做圖或者設(shè)計(jì)海報(bào)之類的。而這次我將使用鴻蒙ArkTs來(lái)開(kāi)發(fā)這款海報(bào)編輯器APP,順便分享一下我這次的開(kāi)發(fā)經(jīng)驗(yàn)。 項(xiàng)目架構(gòu)與
    的頭像 發(fā)表于 03-16 16:09 ?902次閱讀
    <b class='flag-5'>鴻蒙</b>海報(bào)編輯器<b class='flag-5'>APP</b>,分享端云一體化<b class='flag-5'>開(kāi)發(fā)</b>的經(jīng)驗(yàn)!