精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

鴻蒙HarmonyOS三方件開發指南-SwipeLayout側滑刪除

開發 OpenHarmony
文章由鴻蒙社區產出,想要了解更多內容請前往:51CTO和華為官方戰略合作共建的鴻蒙技術社區https://harmonyos.51cto.com

[[384271]]

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

1. SwipeLayout組件功能介紹

1.1.功能介紹:

SwipeLayout組件是一個側滑刪除組件。

1.2. 模擬器上運行效果:

2. SwipeLayout使用方法

2.1. 新建工程,增加組件Har包依賴

在應用模塊中添加HAR,只需要將SwipeLayout.har復制到entry\libs目錄下即可(由于build.gradle中已經依賴的libs目錄下的*.har,因此不需要再做修改)。

2.2. 修改主頁面的布局文件

修改主頁面的布局文件ability_main.xml,將自定義的SwipeLayout添加到xml中,將初始狀態下展示的視圖添加到SwipeLayout作為index為0的子視圖:

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <DirectionalLayout 
  3.     xmlns:ohos="http://schemas.huawei.com/res/ohos" 
  4.     ohos:id="$+id:total1" 
  5.     ohos:height="match_parent" 
  6.     ohos:width="match_parent" 
  7.     ohos:background_element="gray" 
  8.     ohos:orientation="vertical"
  9.     <com.isoftstone.swipelayout.SwipeLayout 
  10.         ohos:id="$+id:sample2" 
  11.         ohos:height="80vp" 
  12.         ohos:width="match_parent" 
  13.         ohos:orientation="horizontal"
  14.         <Text 
  15.             ohos:id="$+id:bottom_layout1" 
  16.             ohos:height="match_parent" 
  17.             ohos:width="match_parent" 
  18.             ohos:background_element="white" 
  19.             ohos:multiple_lines="true" 
  20.             ohos:padding="10" 
  21.             ohos:text="要有最樸素的生活和最遙遠的夢想,即使明天天寒地凍,山高水遠,路遠馬亡。" 
  22.             ohos:text_alignment="left" 
  23.             ohos:text_size="14fp" 
  24.             ohos:visibility="visible"
  25.         </Text> 
  26.         <DirectionalLayout 
  27.             ohos:id="$+id:bottom_wrapper1" 
  28.             ohos:height="match_parent" 
  29.             ohos:width="360px" 
  30.             ohos:background_element="#ddff00" 
  31.             ohos:orientation="horizontal" 
  32.             ohos:visibility="visible"
  33.             <Text 
  34.                 ohos:id="$+id:Texts1" 
  35.                 ohos:height="match_parent" 
  36.                 ohos:width="180px" 
  37.                 ohos:background_element="#7B1FA2" 
  38.                 ohos:left_padding="25" 
  39.                 ohos:right_padding="25" 
  40.                 ohos:text="收藏" 
  41.                 ohos:text_alignment="center" 
  42.                 ohos:text_color="#DC143C" 
  43.                 ohos:text_size="14fp" 
  44.                 ohos:visibility="visible" 
  45.                 /> 
  46.             <Text 
  47.                 ohos:id="$+id:texts2" 
  48.                 ohos:height="match_parent" 
  49.                 ohos:width="180px" 
  50.                 ohos:background_element="#C7C7CC" 
  51.                 ohos:left_padding="25" 
  52.                 ohos:right_padding="25" 
  53.                 ohos:text="刪除" 
  54.                 ohos:text_alignment="center" 
  55.                 ohos:text_color="#DC143C" 
  56.                 ohos:text_size="14fp" 
  57.                 ohos:visibility="visible" 
  58.                 /> 
  59.         </DirectionalLayout> 
  60.         <Image 
  61.             ohos:id="$+id:images3" 
  62.             ohos:height="match_parent" 
  63.             ohos:width="match_parent" 
  64.             ohos:background_element="gray" 
  65.             ohos:image_src="$media:star" 
  66.             /> 
  67.         <DirectionalLayout 
  68.             ohos:id="$+id:bottom_fronts" 
  69.             ohos:height="match_parent" 
  70.             ohos:width="match_content" 
  71.             ohos:background_element="#ddff00" 
  72.             ohos:orientation="horizontal" 
  73.             ohos:visibility="visible"
  74.             <Image 
  75.                 ohos:id="$+id:images1" 
  76.                 ohos:height="match_parent" 
  77.                 ohos:width="180px" 
  78.                 ohos:background_element="green" 
  79.                 ohos:image_src="$media:star"/> 
  80.             <Image 
  81.                 ohos:id="$+id:images2" 
  82.                 ohos:height="match_parent" 
  83.                 ohos:width="180px" 
  84.                 ohos:background_element="red" 
  85.                 ohos:image_src="$media:trash"/> 
  86.         </DirectionalLayout> 
  87.     </com.isoftstone.swipelayout.SwipeLayout> 
  88.     <Image 
  89.         ohos:id="$+id:images" 
  90.         ohos:height="match_content" 
  91.         ohos:width="match_content" 
  92.         ohos:background_element="green" 
  93.         ohos:image_src="$media:star" 
  94.         ohos:layout_alignment="horizontal_center" 
  95.         ohos:top_margin="100vp"/> 
  96. </DirectionalLayout> 

2.3. 初始化SwipeLayout

在MainAbilitySlince類的onStart函數中,增加如下代碼。

  1. SwipeLayout swipeLayout = (SwipeLayout) findComponentById(ResourceTable.Id_sample1); 
  2. DirectionalLayout right = (DirectionalLayout) findComponentById(ResourceTable.Id_bottom_wrapper); 
  3. //初始化 
  4. swipeLayout.initializeSwipe(); 
  5. DirectionalLayout left = (DirectionalLayout) findComponentById(ResourceTable.Id_bottom_front); 
  6. Image image3 = (Image) findComponentById(ResourceTable.Id_image3); 
  7. //將各個方向拖拽時對應展示的視圖添加到swipeLayout 
  8. swipeLayout.addDrag(SwipeLayout.DragEdge.Leftright); 
  9. swipeLayout.addDrag(SwipeLayout.DragEdge.Rightleft); 
  10. swipeLayout.addDrag(SwipeLayout.DragEdge.Bottom, image3); 

3. SwipeLayout開發實現

3.1. 新建一個Module

新建一個Module,類型選擇HarmonyOS Library,模塊名為SwipeLayout,如圖

3.2. 新建一個SwipeLayout類

新建一個SwipeLayout類,繼承自PositionLayout類

SwipeLayout的主要流程:

1. 首先通過xml的構造方法,為SwipeLayout添加拖拽監聽;

2. 將LinkedHashMap

3. 通過public void addDrag(DragEdge dragEdge, Component child) 方法將可拖拽的方向和對應展示的視圖添加到mDragEdges,并設置其初始的ContentPosition;

  1. public void addDrag(DragEdge dragEdge, Component child) { 
  2.     mDragEdges.put(dragEdge, child); 
  3.     switch (dragEdge) { 
  4.         case Left
  5.             child.setContentPosition(getWidth(), 0); 
  6.             break; 
  7.         case Right
  8.             HiLog.info(label, "Log_addDrag" + child.getHeight()); 
  9.             child.setContentPosition(-child.getWidth(), 0); 
  10.             break; 
  11.         case Top
  12.             child.setContentPosition(0, getHeight()); 
  13.             break; 
  14.         case Bottom: 
  15.             child.setContentPosition(0, -child.getHeight()); 
  16.             break; 
  17.     } 
  18.     child.setVisibility(INVISIBLE); 
  19.     addComponent(child, 0); 

4.在拖拽動作的監聽回調方法中完成對視圖的更新

A.在update回調中設置打開和關閉的邊界以及邊界內的位置刷新

  1. if (getSurfaceView().getContentPositionY() + dragInfo.yOffset <= 0) { 
  2.     close(); 
  3. else if (getSurfaceView().getContentPositionY() + dragInfo.yOffset >= getHeight()) { 
  4.     open(); 
  5. else { 
  6.     getSurfaceView().setContentPositionY(getSurfaceView().getContentPositionY() + (float) dragInfo.yOffset); 
  7.     getCurrentBottomView().setContentPositionY(getCurrentBottomView().getContentPositionY() + (float) dragInfo.yOffset); 

B.在end中判斷滑動的距離,如果大于設定的滑動距離則直接將控件展開或者關閉

  1. if (isCloseBeforeDrag && mDragDistanceY < 0) { 
  2.     if (Math.abs(mDragDistanceY) >= mWillOpenPercentAfterClose * getBottomViewHeight()) { 
  3.         open(); 
  4.     } else { 
  5.         close(); 
  6.     } 
  7. if (!isCloseBeforeDrag && mDragDistanceY > 0) { 
  8.     if (Math.abs(mDragDistanceY) >= mWillOpenPercentAfterClose * getBottomViewHeight()) { 
  9.         close(); 
  10.     } else { 
  11.         open(); 
  12.     } 

3.3. 編譯HAR包

利用Gradle可以將HarmonyOS Library庫模塊構建為HAR包,構建HAR包的方法如下:

在Gradle構建任務中,雙擊PackageDebugHar或PackageReleaseHar任務,構建Debug類型或Release類型的HAR。

待構建任務完成后,可以loadingview> bulid > outputs > har目錄中,獲取生成的HAR包。

項目源代碼地址:https://github.com/isoftstone-dev/SwipeBackLayout

歡迎交流:HWIS-HOS@isoftstone.com

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2021-03-01 09:48:24

鴻蒙HarmonyOS應用開發

2021-02-24 15:22:47

鴻蒙HarmonyOS應用開發

2021-02-04 13:06:38

鴻蒙HarmonyOS應用開發

2021-04-16 09:28:18

鴻蒙HarmonyOS應用

2021-01-13 09:40:31

鴻蒙HarmonyOS開發

2021-02-04 09:45:19

鴻蒙HarmonyOS應用開發

2021-02-26 14:15:27

鴻蒙HarmonyOS應用開發

2021-06-28 14:48:03

鴻蒙HarmonyOS應用

2021-01-18 09:52:20

鴻蒙HarmonyOS開發

2021-01-12 12:04:40

鴻蒙HarmonyOS應用開發

2021-01-21 13:21:18

鴻蒙HarmonyOSPhotoview組件

2021-01-20 09:54:56

鴻蒙HarmonyOS開發

2021-01-22 17:33:03

鴻蒙HarmonyOS應用開發

2021-03-31 09:50:25

鴻蒙HarmonyOS應用開發

2021-05-12 15:17:39

鴻蒙HarmonyOS應用

2021-04-12 09:36:54

鴻蒙HarmonyOS應用

2021-03-19 17:42:01

鴻蒙HarmonyOS應用開發

2021-04-20 09:42:20

鴻蒙HarmonyOS應用開發

2021-04-15 17:47:38

鴻蒙HarmonyOS應用

2015-03-31 18:13:09

swipelistvi
點贊
收藏

51CTO技術棧公眾號

国产一区二区精品久久99| 精品免费av| 欧美午夜无遮挡| 日韩区国产区| 国产色视频在线| 99成人在线| 中文字幕亚洲第一| 天天躁日日躁狠狠躁av麻豆男男| 筱崎爱全乳无删减在线观看| 欧美激情综合在线| 高清免费日韩| 国模私拍一区二区| 黄色在线一区| 色妞在线综合亚洲欧美| 日本一卡二卡在线| 电影中文字幕一区二区| 日韩欧美精品网站| 黄色三级中文字幕| 国产爆初菊在线观看免费视频网站| 国产一区二区三区香蕉| 日产精品99久久久久久| 久久久久久久9999| 日韩大片在线| 精品亚洲国产成av人片传媒 | 菠萝菠萝蜜网站| 四虎精品永久免费| 在线观看成人小视频| 日本免费a视频| 免费av网站在线看| 欧美经典一区二区| 免费看污久久久| 亚洲精品一区二区三区区别| 精品一区二区三区日韩| 国产精品1区2区在线观看 | 97欧美在线视频| 亚洲男人天堂手机在线| 国模无码视频一区| 亚洲91网站| 欧美一区三区四区| 亚洲第一狼人区| 欧美aaa视频| 欧美日韩激情视频| 少妇高潮喷水在线观看| a级片免费在线观看| 一区二区三区四区高清精品免费观看 | 69精品久久久| 欧美色综合网| 色综合视频网站| a级片在线观看免费| 婷婷综合亚洲| 久久精品国产久精国产一老狼 | 偷拍自拍亚洲色图| 亚洲国产97在线精品一区| 色哟哟免费视频| 国产精品亚洲欧美一级在线| 91精品国产综合久久精品app| 亚洲一区二区三区四区五区xx| 亚洲校园激情春色| 色狠狠一区二区三区香蕉| 欧美一级片中文字幕| 亚洲精品福利电影| 精品福利免费观看| 91精品91久久久中77777老牛| 1区2区3区在线| 精品久久久中文| 六月激情综合网| 欧美日韩不卡| 欧美日韩国产综合一区二区| 天天影视色综合| 国产情侣一区在线| 日韩欧美色综合网站| 91精品又粗又猛又爽| 卡一精品卡二卡三网站乱码| 日韩av有码在线| 美女被到爽高潮视频| 欧美电影三区| 色综合色综合网色综合| 国产免费观看av| 老司机精品福利视频| 国产欧亚日韩视频| 亚洲AV午夜精品| 91视频精品在这里| 亚洲一区免费看| 青草在线视频在线观看| 亚洲国产精品一区二区久久恐怖片 | 欧美资源在线观看| 中文字幕人妻色偷偷久久| 国产一区二区毛片| 久中文字幕一区| 欧美成人视屏| 午夜久久福利影院| 中文字幕亚洲乱码| 91精品国产自产精品男人的天堂 | 东热在线免费视频| 亚洲免费在线视频| av网址在线观看免费| 最新亚洲国产| 亚洲精品视频在线播放| 午夜激情福利电影| 新67194成人永久网站| 91人成网站www| 深夜福利在线视频| 亚洲桃色在线一区| 日本日本19xxxⅹhd乱影响| 欧美激情三区| 日韩国产激情在线| 欧美黄片一区二区三区| 日韩激情视频在线观看| 肥熟一91porny丨九色丨| 都市激情一区| 欧美日韩国产一区二区三区| 国产性生活一级片| 黑人操亚洲人| 97av在线视频| 国产99999| 国产偷国产偷精品高清尤物| 男人添女荫道口喷水视频| 国产精品伦一区二区| 亚洲第一区中文字幕| 99久久99久久精品国产| 丝袜亚洲另类欧美| 国产欧美日韩一区| 中文字幕中文字幕在线十八区 | 国产aaa一级片| 视频二区欧美毛片免费观看| 伊人久久男人天堂| 四虎成人永久免费视频| 成人美女在线观看| 黄色一级片av| 日韩午夜视频在线| 中文字幕国产亚洲2019| 无码人妻精品一区二区蜜桃色欲 | 一本久道久久综合婷婷鲸鱼| 亚洲一区美女视频在线观看免费| 啊v在线视频| 色婷婷综合久久久| 少妇大叫太粗太大爽一区二区| 韩国欧美一区| 99高清视频有精品视频| 成人免费网站在线观看视频| 欧美色精品在线视频| 亚洲第一综合网| 性久久久久久| 蜜桃传媒视频第一区入口在线看| 成年人在线网站| 亚洲国产精品福利| 国产一区二区三区影院| heyzo一本久久综合| 国产人妻777人伦精品hd| 国产精品久av福利在线观看| 久久久噜久噜久久综合| 日本韩国免费观看| 精品久久久一区| 日本黄色网址大全| 日韩成人av影视| 亚洲成人在线视频网站| 激情久久99| 久久精品视频免费播放| 99re只有精品| 亚洲国产aⅴ天堂久久| 娇妻高潮浓精白浆xxⅹ| 国产欧美激情| 日本不卡一区| 欧美黑粗硬大| 欧美日本亚洲视频| 婷婷色在线观看| 欧美午夜精品伦理| 刘亦菲国产毛片bd| 国产精品一区二区无线| 草b视频在线观看| 久操成人av| 国产情人节一区| 日本天码aⅴ片在线电影网站| 亚洲成人激情视频| 久久这里只有精品9| 亚洲人成精品久久久久久| 日本在线不卡一区二区| 日韩精品电影在线| 欧美a级黄色大片| 奇米777国产一区国产二区| 国产精品91在线观看| 免费不卡视频| 亚洲第一黄色网| 人妻中文字幕一区二区三区| 亚洲天堂av老司机| 国产激情视频网站| 蜜臂av日日欢夜夜爽一区| 一本一道久久a久久综合精品| 亚州一区二区| 国产精品久久久久999| 尤物yw193can在线观看| 亚洲欧美日韩一区二区三区在线| 在线观看国产精品入口男同| 亚洲夂夂婷婷色拍ww47 | 中文字幕制服丝袜一区二区三区| 极品人妻一区二区| 久久精品毛片| 国产欧美综合一区| 18国产精品| 国产精品久久99久久| 美女尤物在线视频| 在线午夜精品自拍| 亚洲AV成人无码一二三区在线| 欧美日韩久久久久久| 亚洲男人第一av| 亚洲日本va在线观看| 久久视频精品在线观看| 成人av午夜电影| 777一区二区| 亚洲在线播放| 97碰在线视频| 婷婷中文字幕一区| 日本三级中国三级99人妇网站| 亚洲日本va| 91精品久久久久久久久久入口| 九色porny视频在线观看| 美女精品久久久| 成人18在线| 亚洲欧美在线免费观看| 亚洲乱码国产乱码精品精软件| 91精品办公室少妇高潮对白| 日韩乱码在线观看| 亚洲综合久久久| 国产suv精品一区二区68| 中文字幕欧美日韩一区| 一级性生活毛片| 波多野结衣中文字幕一区二区三区| 一级做a免费视频| 奇米色一区二区| 99福利在线观看| 99综合在线| 妞干网在线视频观看| 欧美色123| 高清无码一区二区在线观看吞精| 久久精品国产大片免费观看| 欧美一级二级三级| 少妇精品久久久一区二区| 久久96国产精品久久99软件| 给我免费播放日韩视频| 国产精品一区二区av| 亚洲一二三区视频| www.成人av| 91在线一区| 国产精品久久国产三级国电话系列| 亚洲一区二区电影| 国产传媒欧美日韩| 成人直播在线观看| 国模精品一区二区三区| 精品久久ai电影| 久久av一区二区三区漫画| 欧美xxxx在线| 免费国产在线精品一区二区三区| 日韩免费电影在线观看| 欧美精品中文字幕一区二区| 国产欧美日韩精品高清二区综合区| 日韩电影免费观看高清完整| 欧美女优在线视频| 午夜精品短视频| 欧美肥老太太性生活| 久久久99精品视频| 精品999日本| 爱福利视频一区二区| 奇米精品一区二区三区在线观看| 国产高潮免费视频| 国产一区二区在线视频| 年下总裁被打光屁股sp| 91污在线观看| 国产午夜精品久久久久久久久| 日本一区二区久久| 国产成人av免费在线观看| 亚洲一区视频在线观看视频| 中文字幕一区二区三区精品 | 欧美 日韩 激情| 日本免费在线视频不卡一不卡二| 国内外成人免费在线视频| 国产精品12区| 国产精品探花一区二区在线观看| 久久免费看少妇高潮| 潘金莲一级黄色片| 亚洲国产你懂的| 欧美在线视频精品| 日韩一区二区免费高清| 偷拍25位美女撒尿视频在线观看| 这里只有精品丝袜| 国产99re66在线视频| 国产精品久久久久福利| 一区视频网站| 日本一区二区在线视频| 欧美在线不卡| 免费日韩中文字幕| 国产不卡高清在线观看视频| 亚洲午夜福利在线观看| 亚洲免费毛片网站| 伊人久久久久久久久久久久| 日韩一区二区三区在线视频| 日本大片在线观看| 欧美大片免费看 | 国产在线视频2019最新视频| 国产精品美女在线观看直播| 午夜精品亚洲一区二区三区嫩草| 午夜日韩av| 日韩大片一区二区| www.亚洲免费av| 中文字幕五月天| 一本色道久久综合狠狠躁的推荐| 精品久久久无码中文字幕| 国产一级揄自揄精品视频| 国产高清在线a视频大全| 国产欧美一区二区三区视频| 亚洲桃色综合影院| 麻豆md0077饥渴少妇| 秋霞av亚洲一区二区三| 成人免费av片| 亚洲一区二区三区影院| 国产精品视频第一页| 亚洲人成网在线播放| 丁香花视频在线观看| 91在线观看免费| 999国产精品永久免费视频app| 无码人妻丰满熟妇区五十路百度| 福利一区在线观看| 91精品国产高清一区二区三蜜臀| 欧美三区免费完整视频在线观看| 深夜视频在线免费| 91精品91久久久久久| 波多野结衣一区二区三区免费视频| 亚洲一区二区三区色| 青青草国产成人av片免费| 偷拍女澡堂一区二区三区| 亚洲成人免费视频| 亚洲第一天堂影院| 久久91精品国产91久久跳| 色诱色偷偷久久综合| 一区二区三区四区不卡| 蜜臀91精品一区二区三区| 国产一区二区三区四区五区六区| 欧美日韩性视频| 视频污在线观看| 97久久精品国产| 精品福利一区| 日韩视频免费播放| 成人精品免费网站| 国产午夜精品无码一区二区| 精品国产凹凸成av人网站| 里番在线播放| 精品国产_亚洲人成在线| 亚洲福利国产| 捆绑裸体绳奴bdsm亚洲| 亚洲va韩国va欧美va| 香蕉视频免费在线看| 欧美一级淫片播放口| 亚洲最大在线| 丰满少妇在线观看| 国产免费观看久久| 中文字幕免费观看视频| 久久精品青青大伊人av| 国产免费av国片精品草莓男男| 国产在线拍揄自揄拍无码| 国产乱一区二区| 久草视频手机在线观看| 亚洲国产精品小视频| 亚洲欧洲高清| 日韩精品久久久| 毛片基地黄久久久久久天堂| 午夜精品福利在线视频| 亚洲第一精品久久忘忧草社区| 三级在线观看视频| 午夜欧美性电影| 国产精品白丝jk黑袜喷水| 日韩免费一二三区| 亚洲色图18p| 99视频有精品高清视频| 欧美在线观看视频免费| 91老司机福利 在线| 依依成人在线视频| 欧美国产日韩一区二区| 亚洲精品3区| 一道本在线免费视频| 亚洲一区二区av在线| 欧美老女人性开放| 成人午夜激情网| 在线日韩中文| 欧美另类69xxxx| 精品国产乱码久久久久久久久| 性欧美18~19sex高清播放| 亚洲一区免费看| 成人免费av在线| 在线黄色av网站| 国内精久久久久久久久久人| 精品一区二区三区中文字幕老牛| 亚洲色图偷拍视频| 欧美日韩免费看| 欧洲不卡av| 精品国产乱码久久久久| 久久成人羞羞网站| 国产精品久久久久久久久久久久久久久久久 | 日韩少妇内射免费播放18禁裸乳| 国产精品午夜久久| 人妻与黑人一区二区三区| 国产日韩欧美另类|