女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙 TabList 配合 Fraction 實現頂部切換效果演示

OpenHarmony技術社區 ? 來源:HarmonyOS技術社區 ? 作者:HarmonyOS技術社區 ? 2022-01-04 14:41 ? 次閱讀

今天我想著配合鴻蒙里面提供的頂部切換控件 tablist,來實現頂部 tab 切換,然后下面多個 fraction 的效果。廢話不多說,我們正式開始。

效果圖如下:

具體實現

定 tablist 布局:









我們在縱向線性布局上面寫了一個 tablist 然后下面寫了一個 StackLayout 來裝載我們的多個 fraction。

java 代碼邏輯,頂部標簽數據:

privateString[]str={"關注","推薦","熱點","問答"};

初始化 tab 并且添加頂部標簽文字:

privatevoidinitview(){
TabListtabList=(TabList)findComponentById(ResourceTable.Id_tab_list);
if(tabList!=null){
for(inti=0;i

我們初始化 tablist 控件后,for 循環設置我們 tablist 的 tab,并添加到 tablist 組件的 addTab 方法中。

①多個 fraction 切換邏輯:

privatevoidaddHomeFraction(){
getFractionManager()
.startFractionScheduler()
.add(ResourceTable.Id_mainstack,newAttentionFraction())
.submit();
}


publicvoidlayoutShow(intcode){
switch(code){
case0:
getFractionManager()
.startFractionScheduler()
.replace(ResourceTable.Id_mainstack,newAttentionFraction())
.submit();

break;
case1:
getFractionManager()
.startFractionScheduler()
.replace(ResourceTable.Id_mainstack,newRecommendFraction())
.submit();


break;
case2:
getFractionManager()
.startFractionScheduler()
.replace(ResourceTable.Id_mainstack,newHotspotFraction())
.submit();

break;
case3:
getFractionManager()
.startFractionScheduler()
.replace(ResourceTable.Id_mainstack,newQuestionFraction())
.submit();

break;
default:
break;
}
}
這邊我們提供了一個 addHomeFraction 方法和 layoutShow 方法。 我們在進入 MainAbility 的時候調用 addHomeFraction 來加載第一個默認的 fraction。

然后我們在點擊頂部的 tablist 標簽的時候,我們在 onSelected 回調方法中調用 layoutShow方法。

publicvoidonSelected(TabList.Tabtab){
//當某個Tab從未選中狀態變為選中狀態時的回調
System.out.println("當某個Tab從未選中狀態變為選中狀態時的回調");
layoutShow(tab.getPosition());
}

我們只需要傳入 tab.getPosition() 點擊頂部標簽的下標即可,這樣依賴我們的 tablist 配合多個 fraction 切換功能就實現了。具體的 fraction 的內部邏輯我們簡單說一下。

②關注模塊

布局文件:







java 邏輯代碼:

packagecom.example.tablist.fraction;
importcom.example.tablist.ResourceTable;
importcom.example.tablist.bean.PositionInfo;
importcom.example.tablist.config.Api;
importcom.example.tablist.provider.PositionProvider;
importcom.google.gson.Gson;
importohos.aafwk.ability.fraction.Fraction;
importohos.aafwk.content.Intent;
importohos.agp.components.Component;
importohos.agp.components.ComponentContainer;
importohos.agp.components.LayoutScatter;
importohos.agp.components.ListContainer;
importjava.util.List;
/***
*
*創建人:xuqing
*創建2021年2月28日1703
*類說明:關注模塊
*
*/
publicclassAttentionFractionextendsFraction{
privatePositionProviderpositionProvider;
privateListContainerlistContainer;
@Override
protectedComponentonComponentAttached(LayoutScatterscatter,ComponentContainercontainer,
Intentintent){
Componentcomponent=scatter.parse(ResourceTable.Layout_fraction_attention,container,false);
returncomponent;
}
protectedvoidonStart(Intentintent){
super.onStart(intent);
listContainer=(ListContainer)
getFractionAbility().findComponentById(ResourceTable.Id_jop_page_list);
getPostition();
}
publicvoidgetPostition(){
Gsongson=newGson();
PositionInfopositionInfo=gson.fromJson(Api.getPositioninfo(),PositionInfo.class);
Listlist=positionInfo.getData();
positionProvider=newPositionProvider(list,getFractionAbility());
listContainer.setItemProvider(positionProvider);
}
}

幾個 fraction 其實比較簡單,都是加載本地死數據顯示在 listContainer 控件上面。

其他幾個 fraction 因為邏輯都差不多我這邊就不展開一個一個講,有興趣的同學可以下載完整代碼去查閱,鴻蒙到此 TabList 配合 Fraction 實現頂部切換效果就講完了。

總結

鴻蒙里面提供了比較好用的 tablist 組件,我們只需要簡單的基本就能實現頂部 tab 的切換了。 然后配合 fraction 跟 Ability 進行綁定,但是我們的 Ability 需要繼承 FractionAbility。這樣我們就能完成 fraction 和 ability 的綁定。 我們在 tablist 的回調方法去調用我們替換 fraction 的方法就能實現頂部 tablist 點擊切換的時候下面的 fraction 跟著一起切換。

更多的 tablist 和 fraction 的聯動效果同學們有興趣可以私下研究,我這邊篇幅有限就不展開講了。

最后希望我的文章能幫助到各位解決問題,以后我還會貢獻更多有用的代碼分享給大家。

項目地址:

https://gitee.com/qiuyu123/tablistcut

原文標題:在鴻蒙上實現“頂部切換”效果

文章出處:【微信公眾號:HarmonyOS技術社區】歡迎添加關注!文章轉載請注明出處。

審核編輯:彭菁

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • JAVA
    +關注

    關注

    20

    文章

    2984

    瀏覽量

    106770
  • 代碼
    +關注

    關注

    30

    文章

    4886

    瀏覽量

    70206
  • 鴻蒙
    +關注

    關注

    59

    文章

    2491

    瀏覽量

    43733

原文標題:在鴻蒙上實現“頂部切換”效果

文章出處:【微信號:gh_834c4b3d87fe,微信公眾號:OpenHarmony技術社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    元服務FreeBrowser演示效果

    元服務FreeBrowser演示效果
    發表于 11-07 16:50

    鴻蒙機器人與鴻蒙開發板聯動演示

    鴻蒙機器人與鴻蒙開發板聯動演示,機器人的角色為迎賓機器人,開發板負責人賓客出現監聽
    發表于 12-02 14:55

    用DGUS做的PPT切換頁面效果

    本帖最后由 ccn 于 2018-8-27 16:13 編輯 用DGUS做的PPT切換頁面效果,其實就是利用了DGUS的“剪切圖片區域”指令,可惜的是只能剪切矩形。可以按順序剪切,也可以打亂了
    發表于 08-27 16:10

    fraction為什么編譯不過?

    fraction=(temp-mantissa)*16;寫成fraction=(temp-mantissa)
    發表于 08-21 08:00

    搭載HarmonyOS鴻蒙系統2.0的華為P40演示

    搭載HarmonyOS鴻蒙系統2.0的華為P40演示
    發表于 01-14 09:32

    HarmonyOS-JS商城手機TV分布式布局效果練習

    ` 本帖最后由 李洋水蛟龍 于 2021-3-5 17:24 編輯 一、效果展示 二、簡要說明主要是參照鴻蒙官方演示代碼,實現的各項效果
    發表于 03-05 17:20

    ComponentCodelab——Tablist的使用方法

    讓開發者了解HarmonyOS應用開發常用布局和常用組件之Tablist的使用方法,體驗從工程創建到代碼、布局的編寫,再到編譯構建、部署和運行的全過程。
    發表于 05-08 22:04

    ComponentCodelab——體驗TabList和Tab組件(實操)

    演示鴻蒙ComponentCodelab中TabList和Tab組件的使用
    發表于 05-09 17:06

    TabList find為什么總是返回null?

    TabList為什么findComponentById返回null在xml中已經定義過了,發現總是返回null
    發表于 03-16 14:12

    請問下鴻蒙webview切換后臺后,要怎么才能停止聲音的播放?

    請問下鴻蒙webview切換后臺后,要怎么才能停止聲音的播放我是用了onInactive,依然沒有起到效果
    發表于 05-11 11:21

    在Altera SoC上面演示Android應用程序效果

    演示由Altera全球合作伙伴Fujisoft提供。演示在Altera SoC上面的Android應用程序。并且Fujisoft演示了在FPGA邏輯上實現2D加速IP,達到高達54f
    的頭像 發表于 06-26 08:08 ?3670次閱讀

    基于AS腳本的flash圖片自動切換效果實現

    本文詳細介紹了用Adobe Flash Professional CS5.5腳本設計圖片切換效果的技術和步驟,并附上腳本詳細代碼,對網站動畫設計和多媒體課件制作都具有一定的指導作用。
    的頭像 發表于 11-15 08:43 ?3703次閱讀
    基于AS腳本的flash圖片自動<b class='flag-5'>切換</b><b class='flag-5'>效果</b>的<b class='flag-5'>實現</b>

    Fluid catalytic cracking of petroleum fraction

    Fluid catalytic cracking of petroleum fraction(5g電源技術要求)-Fluid catalytic cracking of petroleum fraction (vacuum gas oil) to produce gaso
    發表于 08-04 16:49 ?10次下載
    Fluid catalytic cracking of petroleum <b class='flag-5'>fraction</b>

    基于openharmony實現綁定ability和fraction頁面切換的三方庫

    項目介紹 項目名稱:Alligator 所屬系列:openharmony的第三方組件適配移植 功能:通過注解處理器實現一套綁定ability和fraction頁面切換的三方庫 項目移植狀態:主功能
    發表于 04-08 10:21 ?1次下載

    如何在Linux系統實現屏幕旋轉?觸覺智能RK3568鴻蒙開發板演示

    本文介紹Linux系統實現屏幕旋轉的方法,以解決產品形態的不同的展現方式,觸覺智能EVB3568鴻蒙開發板演示,現已發布全新OpenHarmony5.0 Release固件!
    的頭像 發表于 11-19 23:42 ?773次閱讀
    如何在Linux系統<b class='flag-5'>實現</b>屏幕旋轉?觸覺智能RK3568<b class='flag-5'>鴻蒙</b>開發板<b class='flag-5'>演示</b>