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

基于HarmonyOS ArkUI 3.0框架,瀑布式顯示HDC2021圖片

開發 OpenHarmony
由于前端太菜了,沒有在eTS上按照原理實現, 然后就想到了用Flex布局的FlexDirection.Column, 再加上高度設備,效果也出來了。

[[432847]]

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

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

https://harmonyos.51cto.com

一, 前言

在介紹之前,雖然上篇 基于HarmonyOS ArkUI 3.0 框架,我成功開發了流式布局網絡語 吐槽過了, 再吐槽一下為什么文檔Ets組件里沒有文本輸入框,這么基礎的組件都不先提供的,好的當時在HDC大會體驗Ets實例時,見到有用輸入框,名叫TextInput,在開發工具是沒有提示的,然后我也嘗試用它來為我的Demo提供輸入,然而發現個問題,當我把TextInput組件里的text屬于綁定@State 定義變量時,每次在文本框輸入內容,點擊按鈕,清空變量值,這時文本輸入框也清空了,但當我再次輸入內容時,輸入文本框會追加上次的內容,估計是因為TextInput有這個Bug,所以還沒有在文檔上顯示出來。這里顯示的瀑布式布局效果,我也是在HDC大會上,印象里見到過這樣的效果,但現在已經記不清楚在哪里看到過了,然后以為文檔里有實例或組件說明,找了一遍, 沒有找到,然后就在網上科普了一下瀑布式布局原理,道理都懂了,由于前端太菜了,沒有在eTS上按照原理實現, 然后就想到了用Flex布局的FlexDirection.Column, 再加上高度設備,效果也出來了,但覺得不是真正的瀑布式布局,我想下來官網文檔開放布局了,一行代碼就可以有瀑布式布局了,目前先用著自己寫的效果了。

簡單介紹一下本文的實現效果,在文本輸入框輸入圖片名稱, 模糊搜索出符合條件的圖片,點擊搜索按鈕,把符合條件圖片添加到下面瀑布式布局的組件里,圖片以x、y軸縮放從0.5變化到1,透明度從0到1 顯示出來,點擊隨機刪除按鈕時,從下面圖片隨機刪除一個,并且以沿y軸旋轉360度消失。

二. 實現效果

開發環境效果: https://www.bilibili.com/video/BV1JQ4y1Q7z2/

遠程模擬器效果: https://www.bilibili.com/video/BV1uq4y1R7vB/

基于HarmonyOS ArkUI 3.0 框架,瀑布式顯示HDC2021圖片-鴻蒙HarmonyOS技術社區

三.創建工程

在這當作你已經安裝好最新版本DevEco-Studio開發工具, 點擊File -> New -> New Project… 彈出Create HarmonyOS Project窗口, 這里我選擇空白eTS模板創建, 下來就跟著一起玩轉HarmonyOS ArkUI 3.0 框架聲明式開發吧.

基于HarmonyOS ArkUI 3.0 框架,瀑布式顯示HDC2021圖片-鴻蒙HarmonyOS技術社區
基于HarmonyOS ArkUI 3.0 框架,瀑布式顯示HDC2021圖片-鴻蒙HarmonyOS技術社區

四. 界面開發

界面有三個組件組合而成,文本輸入框和搜索按鈕組合成一個自定義組件, 歷史記錄和隨機刪除按鈕組合成一個自定義組件,滾動組件和多個圖片組件組合成一個自定義組件,同時還有Model結構, 初始化數據模型, 下面我們分別從上到下來介紹自定義組件:

  1. import { PictureData } from '../model/PictureData.ets' 
  2. import { initOnStartup } from '../model/PictureDataModels.ets' 
  3.  
  4. @Entry 
  5. @Component 
  6. struct PictureList { 
  7.   @State pictureItems: PictureData[] = initOnStartup() 
  8.  
  9.   build() { 
  10.     Column() { 
  11.       // 文本輸入框和搜索按鈕組合自定義組件 
  12.       Search_Input({ pictureArr: $pictureItems }) 
  13.       // 歷史記錄和隨機刪除按鈕組合成自定義組件 
  14.       Operation_Picture({ pictureArr: $pictureItems }) 
  15.       // 滾動組件和多個圖片組件組合成自定義組件 
  16.       Flowlayout_Container({ pictureArr: $pictureItems}) 
  17.     } 
  18.     .alignItems(HorizontalAlign.Center) 
  19.   } 

 實現組件內轉場動效,通過點擊搜索按鈕或隨機刪除按鈕來控制圖片組件的查找和移除,呈現容器組件子組件過濾和移除時的動效。

這里用到組件轉場動畫,簡單說一下組件轉場主要通過transition屬性方法配置轉場參數,在組件搜索和移除時會執行過渡動效,需要配合animteTo才能生效。動效時長、曲線、延時跟隨animateTo中的配置。

文本輸入框和搜索按鈕組合,在新增按鈕的onClick事件中添加animateTo方法,來使下面圖片子組件動效生效。

  1. @Component 
  2. struct Search_Input { 
  3.   @State searchInput: string = '' 
  4.   @Link pictureArr: PictureData[] 
  5.  
  6.   build() { 
  7.     Flex({ alignItems: ItemAlign.Center }){ 
  8.       TextInput({ placeholder: '請輸入...', text: this.searchInput }) 
  9.         .type(InputType.Normal) 
  10.         .placeholderColor(Color.Gray) 
  11.         .placeholderFont({ size: 50, weight: 2}) 
  12.         .enterKeyType(EnterKeyType.Search) 
  13.         .caretColor(Color.Green) 
  14.         .layoutWeight(8) 
  15.         .height(40) 
  16.         .borderRadius('20px'
  17.         .backgroundColor(Color.White) 
  18.         .onChange((value: string) => { 
  19.           this.searchInput = value 
  20.         }) 
  21.  
  22.       Button({type: ButtonType.Capsule, stateEffect:false}) { 
  23.         Text('查找').fontSize(17).fontColor(Color.Blue) 
  24.       } 
  25.       .layoutWeight(2) 
  26.       .backgroundColor('#00000000'
  27.       .onClick((event: ClickEvent) => { 
  28.         if (this.searchInput != null && this.searchInput.length > 0) { 
  29.           let that = this; 
  30.           animateTo({ duration: 600 }, () => { 
  31.             this.pictureArr = this.pictureArr.filter((item, idx, arr) => item.name.indexOf(that.searchInput) > -1) 
  32.           }) 
  33.           this.searchInput = '' 
  34.         } 
  35.       }) 
  36.     } 
  37.     .height(60) 
  38.     .padding({left: 10}) 
  39.     .backgroundColor('#FFedf2f5'
  40.   } 

歷史記錄和隨機刪除按鈕組合

  1. @Component 
  2. struct Operation_Picture { 
  3.   @Link pictureArr: PictureData[] 
  4.  
  5.   build() { 
  6.     Flex({ alignItems: ItemAlign.Center }) { 
  7.       if (this.pictureArr.length > 0) { 
  8.         Text('歷史記錄'
  9.           .fontSize(14) 
  10.           .fontColor(Color.Grey) 
  11.           .layoutWeight(5) 
  12.  
  13.         Text('隨機刪除'
  14.           .textAlign(TextAlign.End
  15.           .margin({right: 30}) 
  16.           .fontSize(14) 
  17.           .fontColor(Color.Red) 
  18.           .layoutWeight(5) 
  19.           .onClick((event: ClickEvent) => { 
  20.             animateTo({ duration: 600 }, () => { 
  21.               var idx = Math.floor(Math.random()*this.pictureArr.length); 
  22.               this.pictureArr.splice(idx, 1) 
  23.             }) 
  24.           }) 
  25.       } 
  26.     } 
  27.     .height(40) 
  28.     .padding({ left: 20, top: 10 }) 
  29.   } 

滾動組件和多個圖片組件組合成, 給圖片組件添加兩個transition屬性,分別用于定義組件的添加動效和移除動效, 同時為實現瀑布式布局,設置好每張圖片高度.

  1. @Component 
  2. struct Flowlayout_Container { 
  3. // 鏈接主入口圖片數組 
  4.   @Link pictureArr: PictureData[] 
  5.   private picturesHeight: number 
  6.  
  7.   aboutToAppear() { 
  8.     let tmpHeight: number; 
  9.  
  10.     ForEach(this.pictureArr, 
  11.       (item:PictureData) => { 
  12.         if (item.id % 2 == 0) { 
  13.           tmpHeight = Number(tmpHeight) + 300; 
  14.         } else { 
  15.           tmpHeight = Number(tmpHeight) + 800; 
  16.         } 
  17.       }, 
  18.       (item:PictureData) => item.id.toString() 
  19.     ) 
  20.  
  21.     this.picturesHeight = tmpHeight; 
  22.   } 
  23.  
  24.   build() { 
  25.     // 滾動組件 
  26.     Scroll() { 
  27.       // Flex布局, wrap為FlexWrap.Wrap為流式布局 
  28.       Flex({justifyContent: FlexAlign.Start, direction: FlexDirection.Column, alignContent: FlexAlign.Start, alignItems: ItemAlign.Start, wrap: FlexWrap.Wrap}) { 
  29.         if (this.pictureArr.length > 0) { 
  30.           // 循環顯示圖片到Image組件 
  31.           ForEach(this.pictureArr, 
  32.             (item:PictureData) => { 
  33.               if (item.id % 2 == 0) { 
  34.                 Image(item.image) 
  35.                   .objectFit(ImageFit.Auto).width(px2vp(530)) 
  36.                   .height(px2vp(300)).margin(2) 
  37.                 // 搜索時的動畫 
  38.                   .transition({ type: TransitionType.Insert, scale: { x: 0.5, y: 0.5 }, opacity: 0 }) 
  39.                 // 刪除時的動畫 
  40.                   .transition({ type: TransitionType.Delete, rotate: { x: 0, y: 1, z: 0, angle: 360 }, scale: { x: 0, y: 0 } }) 
  41.               } else { 
  42.                 Image(item.image) 
  43.                   .objectFit(ImageFit.Auto).width(px2vp(530)) 
  44.                   .height(px2vp(800)).margin(2) 
  45.                 // 搜索時的動畫 
  46.                   .transition({ type: TransitionType.Insert, scale: { x: 0.5, y: 0.5 }, opacity: 0 }) 
  47.                 // 刪除時的動畫 
  48.                   .transition({ type: TransitionType.Delete, rotate: { x: 0, y: 1, z: 0, angle: 360 }, scale: { x: 0, y: 0 } }) 
  49.               } 
  50.  
  51.             }, 
  52.             (item:PictureData) => item.id.toString() 
  53.           ) 
  54.         } 
  55.       } 
  56.       .margin({left: 10, top: 10, right: 10, bottom: 100}) 
  57.       .padding({bottom: 10}).align(Alignment.TopStart).width(px2vp(1024)) 
  58.       .height(px2vp(this.picturesHeight)) 
  59.     } 
  60.   } 

數據Model

  1. export class PictureData { 
  2.   id: number; 
  3.   name: string; 
  4.   image: Resource; 
  5.  
  6.   constructor(id: number, name: string, image: Resource) { 
  7.     this.id = id; 
  8.     this.name = name
  9.     this.image = image; 
  10.   } 

初始化數據方法

  1. import { PictureData } from './PictureData.ets' 
  2.  
  3. const PictureArr: any[] = [ 
  4.   {id: 1, name'aa1', image: $r("app.media.1")}, 
  5.   {id: 2, name'aa2', image: $r("app.media.2")}, 
  6.   {id: 3, name'bb3', image: $r("app.media.3")}, 
  7.   {id: 4, name'bb4', image: $r("app.media.4")}, 
  8.   {id: 5, name'aa1', image: $r("app.media.5")}, 
  9.   {id: 6, name'aa2', image: $r("app.media.6")}, 
  10.   {id: 7, name'aa3', image: $r("app.media.7")}, 
  11.   {id: 8, name'aa4', image: $r("app.media.8")}, 
  12.   {id: 9, name'cc1', image: $r("app.media.9")}, 
  13.   {id: 10, name'cc2', image: $r("app.media.10")}, 
  14.   {id: 11, name'bb3', image: $r("app.media.11")}, 
  15.   {id: 12, name'bb4', image: $r("app.media.12")}, 
  16.   {id: 13, name'aa1', image: $r("app.media.13")}, 
  17.   {id: 14, name'aa2', image: $r("app.media.14")}, 
  18.   {id: 15, name'bb3', image: $r("app.media.15")}, 
  19.   {id: 16, name'bb4', image: $r("app.media.16")}, 
  20.   {id: 17, name'aa1', image: $r("app.media.17")}, 
  21.   {id: 18, name'aa2', image: $r("app.media.18")}, 
  22.   {id: 19, name'aa3', image: $r("app.media.19")} 
  23. ]; 
  24.  
  25. export function initOnStartup(): Array<PictureData> { 
  26.   let PictureDataArray: Array<PictureData> = [] 
  27.  
  28.   PictureArr.forEach(item => { 
  29.     PictureDataArray.push(new PictureData(item.id, item.name, item.image)); 
  30.   }) 
  31.  
  32.   return PictureDataArray; 
  33. }; 

介紹就到此了,聲明式開發,是不是簡潔了很多,大家一起擼起來吧。

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

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

https://harmonyos.51cto.com

 

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

2021-11-03 17:08:22

鴻蒙HarmonyOS應用

2021-10-29 15:34:45

鴻蒙HarmonyOS應用

2021-12-01 15:40:23

鴻蒙HarmonyOS應用

2021-11-08 15:02:19

鴻蒙HarmonyOS應用

2021-12-01 15:38:33

鴻蒙HarmonyOS應用

2021-11-08 10:20:48

鴻蒙HarmonyOS應用

2021-11-01 11:08:28

鴻蒙HarmonyOS應用

2021-10-26 15:20:53

鴻蒙HarmonyOS應用

2021-11-15 10:15:37

鴻蒙HarmonyOS應用

2022-08-05 19:27:22

通用API鴻蒙

2021-11-26 10:05:06

鴻蒙HarmonyOS應用

2021-10-28 10:11:17

鴻蒙HarmonyOS應用

2024-01-11 15:54:55

eTS語言TypeScript應用開發

2021-11-03 17:03:31

鴻蒙HarmonyOS應用

2021-12-27 15:10:55

鴻蒙HarmonyOS應用

2021-10-29 18:11:50

華為智慧助手

2022-11-21 16:15:41

ArkUI鴻蒙

2021-10-28 14:58:15

鴻蒙HarmonyOS應用

2021-10-27 16:10:50

鴻蒙HarmonyOS應用

2021-10-28 14:53:27

鴻蒙HarmonyOS應用
點贊
收藏

51CTO技術棧公眾號

欧美亚洲另类制服自拍| 久久av超碰| 国产精品丝袜在线| 国产欧美最新羞羞视频在线观看| 久久久久久久久久一区| 高清中文字幕一区二区三区| 野花国产精品入口| 亚洲毛片一区二区| 2022亚洲天堂| 精品176二区| 国产精品自在欧美一区| 97精品伊人久久久大香线蕉 | 麻豆成人91精品二区三区| 亚洲免费福利视频| 小日子的在线观看免费第8集| 看黄在线观看| 亚洲欧美激情在线| 久中文字幕一区| 国产在线欧美在线| 亚洲美女久久| 在线视频一区二区三| 久久艳妇乳肉豪妇荡乳av| 国产美女主播在线观看| 久久久久久久高潮| 欧美精品久久久久久久久| 国产ts丝袜人妖系列视频| 亚洲精品成人一区| 日本韩国欧美三级| 人人妻人人做人人爽| av小片在线| 久久影视一区二区| 国内精品视频免费| 亚洲AV午夜精品| 极品美女销魂一区二区三区免费| 国产精品久久久久久影视| 久久免费小视频| 久久久久久久久国产一区| 亚洲精品国偷自产在线99热 | 91精品国产自产在线丝袜啪| 欧美午夜精品理论片a级按摩| www.日本在线播放| av色在线观看| 亚洲午夜私人影院| 日韩精品免费一区| 色网在线观看| 亚洲免费观看高清| 国产又粗又爽又黄的视频 | 欧美人与物videos| 亚洲人人夜夜澡人人爽| 日韩欧美中文字幕电影| 精品日韩在线观看| 欧美在线观看视频网站| 欧美人体一区二区三区| 色偷偷久久人人79超碰人人澡| 福利视频免费在线观看| 91精品国产91久久久久久青草| 国产精品福利影院| 国产精品久久成人免费观看| 成人在线网址| 亚洲资源中文字幕| 成人在线免费观看视频网站| sqte在线播放| 一区二区三区av电影| 91xxx视频| 国产嫩草在线视频| 天天av天天翘天天综合网色鬼国产| 日本a视频在线观看| 制服丝袜在线播放| 亚洲人成影院在线观看| 日韩精品一区二区在线视频| 18网站在线观看| 亚洲成在人线免费| 国产深夜男女无套内射| 欧美成人黑人| 在线播放一区二区三区| 日韩av影视大全| 亚洲精品777| 亚洲第五色综合网| 人人人妻人人澡人人爽欧美一区| av中字幕久久| 欧美成人国产va精品日本一级| 天堂资源在线播放| 视频一区中文字幕| 国产玖玖精品视频| 欧美一区二区黄片| 成人做爰69片免费看网站| 蜜桃导航-精品导航| 婷婷视频在线| 亚洲美女淫视频| 日本福利视频一区| 国产香蕉久久| 亚洲国产精品一区二区久| 黄色av免费播放| 欧美日本亚洲韩国国产| 欧美激情一区二区久久久| 麻豆changesxxx国产| 亚洲在线视频| 亚洲自拍av在线| 国产 日韩 欧美 精品| 成人av电影在线| 免费精品视频一区二区三区| 99视频国产精品免费观看a | 蜜桃欧美视频| 1024精品视频| 波多野结衣一本一道| 精品在线亚洲视频| 久久天天狠狠| 福利视频在线看| 亚洲在线视频免费观看| 人妻熟女一二三区夜夜爱| 欧美电影在线观看一区| 日韩av资源在线播放| www深夜成人a√在线| 精品成人一区| 成人久久一区二区三区| 久久精品蜜桃| 亚洲不卡av一区二区三区| 午夜免费福利视频在线观看| 国产一区在线电影| 久久久国产视频91| 日韩 欧美 综合| 久久国产精品第一页| 久久久久久九九| 里番在线播放| 91精品麻豆日日躁夜夜躁| 深夜视频在线观看| 欧美残忍xxxx极端| 4388成人网| 精品人妻一区二区三区四区不卡| 国产亚洲视频系列| 国产男女在线观看| vam成人资源在线观看| 日韩电影在线观看中文字幕 | 四虎永久免费观看| 亚洲天天综合| 91成品人片a无限观看| 亚洲天堂免费av| 99久久久久免费精品国产 | 国产日韩1区| 国产精品久久亚洲| 2024最新电影免费在线观看| 欧美精品在线观看一区二区| 日本少妇xxxxx| 日韩中文字幕一区二区三区| 蜜桃传媒视频第一区入口在线看| 欧美freesex黑人又粗又大| 欧美一区二区视频观看视频| 神马午夜精品91| 美女视频黄a大片欧美| 亚洲开发第一视频在线播放| 97精品国产99久久久久久免费| 日韩毛片中文字幕| 亚洲国产成人精品女人久久| 99久久精品国产导航| 全黄性性激高免费视频| 国产精品17p| 久久理论片午夜琪琪电影网| 色呦呦中文字幕| 亚洲va天堂va国产va久| 国产人妻精品午夜福利免费| 欧美视频官网| 成人网在线免费看| 成人综合影院| 欧美日韩亚州综合| 欧美亚洲日本在线| 麻豆精品在线视频| 老汉色影院首页| 中文无码日韩欧| 国产91精品久久久久久久| 色天堂在线视频| 艳妇臀荡乳欲伦亚洲一区| 一级 黄 色 片一| 亚洲国产一区二区精品专区| 久久久久久国产精品一区 | 性感美女极品91精品| 朝桐光av一区二区三区| 日韩精品午夜视频| 中国一级黄色录像| 国产精品45p| 国产精品aaa| 成人看av片| 亚洲精品v欧美精品v日韩精品| 天堂中文在线网| 国产精品久久99| 91超薄肉色丝袜交足高跟凉鞋| 91精品二区| 久久99精品久久久水蜜桃| 国产精品久久亚洲不卡| 久久在线精品视频| 成人免费公开视频| 色哦色哦哦色天天综合| 阿v天堂2014| 国产精品77777| 久久精品视频91| 韩日精品视频| 国产在线播放一区二区| 国产精品麻豆成人av电影艾秋| 欧美日韩福利视频| 亚洲欧美综合在线观看| 欧美日韩激情一区二区三区| 天天操天天射天天爽| 国产精品美女久久久久高潮| 拔插拔插华人永久免费| 久久国产欧美| 黄网站色视频免费观看| 欧美日韩一二三四| 91九色蝌蚪嫩草| 日韩成人av电影| 久久男人的天堂| 日本www在线观看| 亚洲区在线播放| 性生活黄色大片| 欧美人牲a欧美精品| 69国产精品视频免费观看| 国产精品乱码一区二三区小蝌蚪| 最新版天堂资源在线| 激情综合五月天| 久久人妻精品白浆国产| 在线成人av| 四虎影院一区二区三区 | 亚洲欧美色图视频| 国产欧美日韩一区二区三区在线| 欧美精品亚洲| 免费精品一区| 国产精品va在线播放| 国产免费拔擦拔擦8x在线播放| 久久亚洲精品一区| 999国产在线视频| 亚洲欧美日韩精品久久奇米色影视 | 日日夜夜一区| 国产精品久久久久久久电影| 一区二区三区短视频| 午夜精品三级视频福利| 黄色在线观看视频网站| 欧美人与性动交| 超碰个人在线| 在线亚洲午夜片av大片| 日韩av成人| 精品视频在线播放色网色视频| 人妻一区二区三区| 亚洲国产日韩一区| xxxwww在线观看| 欧美tk丨vk视频| 国内精品国产成人国产三级| 欧美一级国产精品| 国产探花精品一区二区| 91.麻豆视频| 精品久久人妻av中文字幕| 91精品国产一区二区| 在线免费观看日韩视频| 欧美无人高清视频在线观看| 性高潮视频在线观看| 欧美在线观看一区| 亚洲天堂网在线观看视频| 欧美日韩一区中文字幕| 一级黄色片在线看| 91精品国产一区二区三区蜜臀| 国产免费福利视频| 精品免费一区二区三区| 亚洲高清视频在线播放| 精品成a人在线观看| 少妇一区二区三区四区| 日韩精品免费视频| 99在线观看免费| 欧美精品一区二区精品网| 四虎成人免费在线| 亚洲女同同性videoxma| 日韩国产欧美亚洲| 日日夜夜精品视频免费| 中文字幕免费高清在线| 国产在线一区观看| 宇都宫紫苑在线播放| 成人小视频免费在线观看| 色婷婷精品久久二区二区密| 91污在线观看| 在线观看免费小视频| 亚洲天堂免费看| 精品成人久久久| 欧美无砖专区一中文字| 性猛交富婆╳xxx乱大交天津| 亚洲精品久久久久| 日本a在线播放| 97在线观看免费高清| 色成人免费网站| 91丨九色丨国产在线| 欧美成人专区| 日韩av高清| 国产精品a级| 91视频免费版污| 国内精品久久久久影院色| 日本黄色动态图| 国产精品美女久久久久久2018 | 色婷婷av一区| 中文字幕一区二区免费| 日韩欧美一区在线| 香蕉视频国产在线| 精品伊人久久97| av在线官网| 欧美最顶级丰满的aⅴ艳星| 夜鲁夜鲁夜鲁视频在线播放| 91国产精品91| 奇米一区二区| 久久国产精品一区二区三区| 欧美电影《轻佻寡妇》| 大陆极品少妇内射aaaaa| 激情欧美一区二区| xxxx日本免费| 午夜精品久久久久久久蜜桃app | 精品在线播放午夜| 中文字幕高清视频| 中文字幕中文字幕一区| 黄色片免费观看视频| 欧美一区二区免费视频| www 日韩| 日本欧美一二三区| 嗯用力啊快一点好舒服小柔久久| 麻豆视频成人| av成人毛片| 稀缺小u女呦精品呦| 亚洲欧洲美洲综合色网| 中文字幕在线天堂| 亚洲国产精品va在线看黑人| 婷婷视频在线| 国产精品亚洲片夜色在线| 亚洲精品亚洲人成在线观看| 日韩视频一二三| 日本欧美在线观看| 偷拍夫妻性生活| 狠狠躁夜夜躁久久躁别揉| www久久久com| 九九精品在线视频| 中文字幕资源网在线观看免费| 国产成人女人毛片视频在线| 天天久久综合| 国产成人久久777777| 久久嫩草精品久久久久| 天天综合天天干| 日韩av综合中文字幕| 里番在线播放| 国产乱子伦精品| 91久久夜色精品国产按摩| 国产成人在线免费看| 不卡高清视频专区| 国产乡下妇女做爰毛片| 日韩欧美一级精品久久| 色呦呦在线免费观看| 国产女人水真多18毛片18精品| 黄色成人在线网站| www国产视频| 丁香五六月婷婷久久激情| 亚洲 小说区 图片区 都市| 欧美美女15p| 欧美亚洲二区| 9l视频自拍9l视频自拍| 国产精品系列在线播放| 日韩一级片av| 欧美一区二区美女| 2021国产在线| 久久精彩视频| 久久久久久一区二区| 中文字幕免费高清| 欧美色电影在线| 五月天丁香视频| 欧美福利视频在线| 不卡一区视频| 免费看毛片的网址| 久久综合色8888| 免费看av在线| 欧美老女人xx| 欧美天堂社区| 亚洲国产高清av| 韩日一区二区| 日韩一区二区在线看片| 日韩欧美一起| 国产精品一区二区免费| 麻豆精品91| 日韩在线视频网址| 欧美色精品在线视频| 日本乱理伦在线| 精品国产电影| 男人操女人的视频在线观看欧美| 91动漫免费网站| 欧美mv日韩mv亚洲| 国产精品扒开腿做爽爽爽视频软件| 亚洲一区二区精品在线观看| 国产一区日韩二区欧美三区| 欧美黑人性猛交xxx| 精品视频在线播放色网色视频| 亚洲精品大全| 国模吧无码一区二区三区| 国产精品国产自产拍高清av| www.色播.com| 国产成人一区二| 亚洲性人人天天夜夜摸| 欧美熟妇一区二区| 日韩一区二区在线看| 日韩精品三区| 成人黄色片免费| 国产日韩精品久久久| 丰满少妇一级片|