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

HarmonyOS 通用的應用引導功能

系統 OpenHarmony
手機APP的引導頁是一個常見的功能,今天和大家一起分享在鴻蒙系統的擼引導頁代碼的經驗。引導的內容文字不宜太長,適當加入一些圖案可以方便用戶理解。開始咱們今天的主題,如何實現應用的引導功能吧!

[[419721]]

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

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

https://harmonyos.51cto.com

手機APP的引導頁是一個常見的功能,今天和大家一起分享在鴻蒙系統的擼引導頁代碼的經驗。

一.應用引導頁的功能

1.1為什么要做應用的引導功能?

幾乎所有的App都會有做一些界面引導,有的是頁面交互的引導,有的是為了介紹新功能。

1.2通用的功能性引導大概分哪些呢?

主功能引導、新功能引導和功能轉移或改名引導。

1.3.通用的應用引導,需要注意哪些?

引導的內容文字不宜太長,適當加入一些圖案可以方便用戶理解。言歸正傳吧,開始咱們今天的主題,如何實現應用的引導功能吧!

二.實現應用的引導功能具體步驟:

首先來看看討論的引導功能的效果吧!點擊引導頁,向上滑動過程,第一個界面圖案和文字漸變消失的過程。而第二頁界面的圖片和文字漸漸清晰可見。底部Next 圖標會下滑隱藏再彈出的動畫效果。

開發準備

搭建鴻蒙開發環境,這里就不做介紹了,如果沒有環境沒有搭建好的同學可以進入學習安裝環境, 安裝好環境以后接下來我們就可以進行開發工作了。

2.1 設計思路

首先我們做的是公用的組件,我們需要使用組件化思想去搭建我們的項目框架,接下來根據組件的需求我們先去設計一下界面,設計好之后我們需要對頁面添加數據,添加完數據之后組件的大體界面已經展示給我們,下來就是在滑動page的時候添加底部button的回彈動畫,并且在此時我們需要操作page的子view。最后我們要去使用我們的組件。

2.2 設計步驟

2.2.1 設計界面

根據我們要實現的功能,我們可以使用PageSlider控件去實現界面布局文件,實現代碼為:

  1. <PageSlider 
  2.      ohos:id="$+id:vertical_view_pager" 
  3.      ohos:width="match_parent" 
  4.      ohos:height="match_parent" > 
  5. </PageSlider> 

(1)添加數據、初始化數據

  1. public void setData() { 
  2.     super.setData(); 
  3.     pageColors = new ArrayList<>(); 
  4.     pageColors.add(getString(ResourceTable.Color_colorAccent)); 
  5.     pageColors.add(getString(ResourceTable.Color_color2)); 
  6.     pageColors.add(getString(ResourceTable.Color_colorPrimary)); 
  7.     pageColors.add(getString(ResourceTable.Color_color3)); 
  8.     pageMoudles = getData(); 
  9.  
  10. private List<PageMoudle> getData() { 
  11.     String textValue = "Lorem Ipsum is simply dummy text of the printing and typesetting industry."
  12.     PageMoudle pageMoudleOne = new PageMoudle(); 
  13.     pageMoudleOne.setRecoureId(ResourceTable.Graphic_intro_second_vector); 
  14.     pageMoudleOne.setBackGroudRgbColor(RgbColor.fromArgbInt(Color.getIntColor(pageColors.get(0)))); 
  15.     pageMoudleOne.setTitle("Lorem Ipsum Lorem Ipsum"); 
  16.  
  17.     pageMoudleOne.setText(textValue + textValue + textValue); 
  18.     pageMoudleOne.setTitleSize(17); 
  19.     pageMoudleOne.setTextSize(14); 
  20.     List<PageMoudle> datas = new ArrayList<>(); 
  21.     datas.add(pageMoudleOne); 
  22.  
  23.     PageMoudle pageMoudleTwo = new PageMoudle(); 
  24.     pageMoudleTwo.setRecoureId(ResourceTable.Graphic_four); 
  25.         pageMoudleTwo.setBackGroudRgbColor(RgbColor.fromArgbInt(Color.getIntColor(pageColors.get(1)))); 
  26.     pageMoudleTwo.setTitle("Lorem Ipsum Lorem Ipsum "); 
  27.     pageMoudleTwo.setText(textValue + textValue); 
  28.     datas.add(pageMoudleTwo); 
  29.  
  30.     PageMoudle pageMoudleThree = new PageMoudle(); 
  31.     pageMoudleThree.setRecoureId(ResourceTable.Graphic_ohos); 
  32.         pageMoudleThree.setBackGroudRgbColor(RgbColor.fromArgbInt(Color.getIntColor(pageColors.get(2)))); 
  33.     pageMoudleThree.setTitle("Lorem Ipsum"); 
  34.     pageMoudleThree.setText(textValue); 
  35.     datas.add(pageMoudleThree); 
  36.  
  37.     PageMoudle pageMoudleFour = new PageMoudle(); 
  38.     pageMoudleFour.setRecoureId(ResourceTable.Media_new_intro); 
  39.         pageMoudleFour.setBackGroudRgbColor(RgbColor.fromArgbInt(Color.getIntColor(pageColors.get(3)))); 
  40.     pageMoudleFour.setTitle("Lorem Ipsum"); 
  41.     pageMoudleFour.setText(textValue + textValue + textValue); 
  42.     datas.add(pageMoudleFour); 
  43.     return datas; 

 (2)設置provider

  1. pageSlider = (PageSlider) findComponentById(ResourceTable.Id_vertical_view_pager); 
  2. pageSlider.setOrientation(Component.VERTICAL); 
  3. pageSlider.addPageChangedListener(this); 
  4. pageSlider.setTouchEventListener(this::onTouchEvent); 
  5. adapter = new VerticalIntroPagerAdapter(this, pageMoudles); 
  6. pageSlider.setProvider(adapter); 

2.2.2 添加動畫

這里我們使用屬性動畫去完成底部button的上彈和下彈操作,上彈和下彈是和我們手指滑動的方向是有關系的,所以這里我們必須實現手指的觸摸事件,在觸摸事件中獲取我們手機滑動的距離,如果距離大于0則是下滑,如果小于0則是下滑.

(1) 獲取是上滑還是下滑代碼如下:

  1. @Override 
  2. public boolean onTouchEvent(Component component, TouchEvent touchEvent) { 
  3.         int action = touchEvent.getAction(); 
  4.         switch (action) { 
  5.             case TouchEvent.PRIMARY_POINT_DOWN: 
  6.                 pageSlider.setSlidingPossible(true); 
  7.                 startPointY = getTouchY(touchEvent, 0, component); 
  8.                 return true
  9.             case TouchEvent.POINT_MOVE: 
  10.                 movePointY = getTouchY(touchEvent, touchEvent.getIndex(), component) - startPointY; 
  11.                 if (page != 0 && movePointY > 0) { 
  12.                     WindowManager.getInstance().getTopWindow().get().setStatusBarColor(getColorByString(pageColors.get(page - 1))); 
  13.                 } 
  14.                 return true
  15.             case TouchEvent.PRIMARY_POINT_UP: 
  16.                 return true
  17.             default
  18.         } 
  19.         return false

(2) 獲取到上滑還是下滑后,接下來就去給底部button設置動畫.動畫用的是屬性動畫,屬性動畫大體實現是初始化動畫,設置動畫持續時間,實現動畫屬性值變化監聽事件,最后啟動動畫。大體代碼如下:

  1. private void startChangeButtonBg(int direction, int duration) { 
  2.         if (animatorValue == null) { 
  3.             animatorValue = new AnimatorValue(); 
  4.         } 
  5.         animatorValue.setCurveType(Animator.CurveType.LINEAR); 
  6.         animatorValue.setDuration(duration); 
  7.         animatorValue.setValueUpdateListener(new AnimatorValue.ValueUpdateListener() { 
  8.             @Override 
  9.             public void onUpdate(AnimatorValue animatorValue, float v) { 
  10.                 if (direction <= 0) { 
  11.                     double value = ((1 - (double)v) * nextHeight) * direction; 
  12.                     next.setMarginBottom((int) value); 
  13.                 } else { 
  14.                     float value = -(v * nextHeight); 
  15.                     next.setMarginBottom((int) value); 
  16.                     if (v > 0.9) { 
  17.                         if (page == 3) { 
  18.                             skip.setVisibility(Component.INVISIBLE); 
  19.                             next.setText("DONE"); 
  20.                             next.setNormalColor(pageColors.get(1)); 
  21.                         } else { 
  22.                             skip.setVisibility(Component.VISIBLE); 
  23.                             next.setText("NEXT"); 
  24.                             next.setNormalColor(pageColors.get(page + 1)); 
  25.                         } 
  26.                         next.setMarginBottom(0); 
  27.                     } 
  28.                 } 
  29.             } 
  30.         }); 
  31.         setAnimStateChangeList(direction); 
  32.         animatorValue.start(); 
  33.  
  34. private void setAnimStateChangeList(int direction) { 
  35.         animatorValue.setStateChangedListener(new Animator.StateChangedListener() { 
  36.             @Override 
  37.             public void onStart(Animator animator) { 
  38.                 if (direction <= 0) { 
  39.                     if (page == 3) { 
  40.                         skip.setVisibility(Component.INVISIBLE); 
  41.                         next.setText("DONE"); 
  42.                         next.setNormalColor(pageColors.get(1)); 
  43.                     } else { 
  44.                         skip.setVisibility(Component.VISIBLE); 
  45.                         next.setText("NEXT"); 
  46.                         next.setNormalColor(pageColors.get(page + 1)); 
  47.                     } 
  48.                 } 
  49.             } 
  50.             @Override 
  51.             public void onStop(Animator animator) { 
  52.             } 
  53.             @Override 
  54.             public void onCancel(Animator animator) { 
  55.             } 
  56.             @Override 
  57.             public void onEnd(Animator animator) { 
  58.                 movePointY = 0; 
  59.             } 
  60.             @Override 
  61.             public void onPause(Animator animator) { 
  62.             } 
  63.             @Override 
  64.             public void onResume(Animator animator) { 
  65.             } 
  66.         }); 
  67.     } 

2.2.3 操作子view

如何去操作子view呢?首先我們先去看看PageSlider是否有子view的操作監聽接口,查看api后沒有這樣的接口獲取方法,那就得我們自己去考慮怎么實現呢,我這里的實現思路是在PageSlider設置provider的時候保存所有的子view對象,然后再使用的時候拿出子view再進行操作。我們這里例子是改變子view的透明度.代碼實現如下:

(1) 保存子view

  1. public class VerticalIntroPagerAdapter extends PageSliderProvider { 
  2.     LinkedHashMap<Integer, Component> pageComonents; 
  3.         public VerticalIntroPagerAdapter(Context context, List<PageMoudle> datas) { 
  4.             this.context = context; 
  5.             this.datas = datas; 
  6.             pageComonent = new ArrayList<>(); 
  7.     // 初始化用來添加子view的集合,注意這里是一個有序集合 
  8.             pageComonents = new LinkedHashMap<Integer, Component>(); 
  9.     } 
  10.     //添加子view 
  11.     @Override 
  12.     public Object createPageInContainer(ComponentContainer componentContainer, int i) { 
  13.         if (!pageComonents.containsValue(component)) { 
  14.                 pageComonents.put(i, component); 
  15.             } 
  16.     } 

(2) 操作子view

  1. private void setPageApale(int currentPage, int targetPage, float offset) { 
  2.         if (adapter.pageComonents != null && adapter.pageComonents.get(currentPage) != null 
  3.             && adapter.pageComonents.get(targetPage) != null) { 
  4.             float alpha = new BigDecimal(1.0f).subtract(new BigDecimal(offset).multiply(new BigDecimal(2))).floatValue(); 
  5.             if (offset >= 0.4 && offset <= 0.9) { 
  6.                 offset = new BigDecimal(offset).subtract(new BigDecimal( 0.4f)).floatValue(); 
  7.             } else if (offset < 0.4) { 
  8.                 offset = 0.0f; 
  9.             } else { 
  10.                 offset = 1.0f; 
  11.             } 
  12.             setApale(currentPage, targetPage, alpha, offset); 
  13.         } 

到這里我們的豎直引導工具組件就已經封裝好了。

2.2.4 使用組件

如何去使用我們的組件呢?這里我們用的是組件化思想.所以我們呢只需要在我們的項目中引入我們的組件,然后再我們的ablity中集成我們封裝好的VerticalIntroSlice對象就行,最后我們再把封裝一個添加數據的接口,把我們的數據變成動態添加的就行。

三. 結語

到此我們的整個設計流程就完了,通過上面的操作,相信小伙伴們就可以實現應用引導功能了。

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

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

https://harmonyos.51cto.com

 

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

2021-04-23 16:08:08

鴻蒙HarmonyOS應用

2022-11-24 16:11:27

2022-11-23 10:22:12

組件庫前端

2009-02-25 10:14:44

GRE通用路由

2021-10-14 07:28:03

Kubernetes通用排查

2019-08-28 09:27:33

Linux操作系統技術

2012-07-20 11:06:00

JavaJava框架

2011-12-15 21:24:46

應用

2022-08-09 16:01:24

應用開發鴻蒙

2010-03-11 16:50:27

Python應用

2010-02-23 17:54:36

2021-06-22 09:44:56

鴻蒙HarmonyOS應用

2021-06-03 09:36:38

鴻蒙HarmonyOS應用

2024-01-15 06:05:05

DockerGol ang應用程序

2020-03-24 14:21:26

蘋果MaciOS

2023-12-08 13:19:00

前端Reactour流行庫

2011-10-11 10:10:57

2020-11-09 11:56:49

HarmonyOS

2015-10-10 16:31:58

2017-03-13 16:30:50

React Route構建JavaScript
點贊
收藏

51CTO技術棧公眾號

波多野结衣在线观看一区二区| 亚洲综合在线电影| 北条麻妃国产九九精品视频| 高清欧美性猛交| 受虐m奴xxx在线观看| 国产精品黄色片| 亚洲综合激情另类小说区| 久久波多野结衣| 97超碰资源站| 亚洲免费网址| 不卡av在线播放| 大又大又粗又硬又爽少妇毛片 | 国产精品短视频| av一区二区三区四区电影| 在线视频一区二区三区四区| 天天综合国产| 日韩国产在线播放| 欧美日韩理论片| 日韩精品三区| 亚洲国产成人高清精品| 亚洲激情一区二区三区| 无码国产精品一区二区色情男同 | 亚洲成人高清在线| 性欧美.com| 天天干天天操av| 久久99在线观看| 日韩av电影院| 在线观看精品国产| 亚洲视频电影在线| 国产小视频国产精品| 欧美xxxxx精品| 爱情电影网av一区二区| 日本精品免费观看高清观看| 亚洲韩国在线| 日本福利片在线| 成人一区二区三区| 97netav| 一本色道久久综合无码人妻| 亚洲男女自偷自拍| 丝袜一区二区三区| 五级黄高潮片90分钟视频| 动漫av一区| 精品欧美乱码久久久久久| 99九九99九九九99九他书对| 国产精品亚洲d| 日韩欧美一区二区在线| 日本一道本久久| 高h视频在线播放| 综合精品久久久| 中文字幕欧美日韩一区二区三区| 91网在线播放| 中文无字幕一区二区三区 | 亚洲综合另类小说| japanese在线播放| dy888亚洲精品一区二区三区| 国产精品美女久久福利网站| 婷婷久久青草热一区二区| 内衣办公室在线| 久久精品视频网| 日韩欧美激情一区二区| 欧美扣逼视频| 国产欧美日韩不卡| 一区二区三区在线观看www| 在线看av的网址| 亚洲婷婷综合久久一本伊一区| 天堂精品一区二区三区| av二区在线| 最新中文字幕一区二区三区 | 粉嫩精品一区二区三区在线观看| 99久久精品免费看国产交换| 国产一区二区在线影院| 亚洲最大av网站| 丰满熟妇人妻中文字幕| aaa国产一区| 久久资源av| 国产精品四虎| 亚洲天堂网中文字| 国产自产在线视频| 亚洲一区资源| 欧美日韩一区二区三区高清| 成人黄色一级大片| 高清精品视频| 国产一区二区三区网站| 国产免费一区二区三区四区| 欧美精选一区| 57pao国产精品一区| 波多野结衣在线观看视频| 久久99精品国产麻豆婷婷洗澡| 91嫩草在线| 日本大臀精品| 亚洲九九爱视频| 一女被多男玩喷潮视频| 久久人体av| 日韩精品一区二区三区四区视频| 国产精品无码永久免费不卡| 欧美日韩精品一区二区视频| 欧美成人在线免费| 无码人妻精品一区二| 国产专区综合网| 狠狠色噜噜狠狠色综合久| 岛国视频免费在线观看| 一区二区三区免费网站| 午夜视频在线瓜伦| 亚洲综合色婷婷在线观看| 亚洲小视频在线| 欧美三级 欧美一级| 麻豆九一精品爱看视频在线观看免费| 91久久精品国产91久久| 欧美91精品久久久久国产性生爱| 日韩一区在线播放| 色婷婷综合久久久久中文字幕 | 男人天堂亚洲| 在线中文字幕不卡| 插我舔内射18免费视频| 国产精品毛片久久| 国产91网红主播在线观看| 亚洲av综合色区无码一区爱av| 欧美激情一区不卡| 欧美成人免费在线观看视频| 国产高清日韩| 在线播放精品一区二区三区 | 欧美综合天天夜夜久久| av电影在线播放| 国产精品久久久久久久久妇女| 17婷婷久久www| 亚洲成熟女性毛茸茸| 国产精品久久久99| 国产成人精品视频ⅴa片软件竹菊| 日韩中文字幕在线一区| 日韩视频亚洲视频| 波多野结衣日韩| 久久亚洲欧美国产精品乐播 | 午夜综合激情| 国产精品毛片一区视频| av在线播放观看| 欧美日韩国产成人在线免费| 欧美 日韩 国产 成人 在线观看| 一区在线视频观看| 99porn视频在线| 二区在线播放| 91 com成人网| 成人一级黄色大片| 精品无人码麻豆乱码1区2区 | 亚洲国产裸拍裸体视频在线观看乱了中文| 国产色视频一区| 91青青在线视频| 欧洲一区在线电影| 亚洲精品国产91| 日一区二区三区| 天天综合狠狠精品| 成人在线观看免费播放| 这里只有精品久久| 一级做a爰片久久毛片16| 国产精品乱码妇女bbbb| 奇米视频7777| 久久久久免费av| 51国偷自产一区二区三区| 午夜dj在线观看高清视频完整版 | 国产麻豆剧传媒精品国产| 天天天综合网| 91在线免费看片| 动漫一区二区| 亚洲精品久久视频| 黄色大片网站在线观看| 久久精品亚洲乱码伦伦中文| av无码精品一区二区三区| 成人嘿咻视频免费看| 国产精品久久久久久久久久ktv| eeuss影院www在线播放| 91精品国产91久久久久久最新毛片 | 日韩免费视频播放| 亚洲va久久| 国产精品揄拍一区二区| 国产淫片在线观看| 精品日韩成人av| 日本三级一区二区| 国产精品天美传媒沈樵| 日本一二三区在线| 亚洲乱亚洲高清| 日韩精品伦理第一区| 欧美午夜三级| 欧美激情在线有限公司| 国产中文字幕在线观看| 欧美精品在线观看播放| 九九九国产视频| 国产日韩欧美电影| 三级网站免费看| 一本久久知道综合久久| 亚洲精品白虎| 国产精品tv| 国产精品久久久久久久久久三级 | 欧美日韩中字| av一区二区三区免费| 玛雅亚洲电影| 欧美成人免费小视频| 欧洲一区av| 欧美一级专区免费大片| 中文字幕高清在线免费播放| 1024精品合集| wwwwww日本| 国产一区二区免费在线| 日本在线视频www| 欧美激情91| 亚洲成人自拍| 美女视频亚洲色图| 91丝袜美腿美女视频网站| 国模私拍一区二区国模曼安| 精品国产欧美成人夜夜嗨| 日本视频在线观看一区二区三区| 91精品婷婷国产综合久久性色| 久久青青草原亚洲av无码麻豆| 中文字幕日本不卡| 久久精品视频18| 成人国产精品免费观看动漫 | 国产精品成人**免费视频| 91地址最新发布| 青青草视频在线免费直播| 在线日韩av观看| 三级视频网站在线| 欧美变态口味重另类| 97久久人国产精品婷婷| 色婷婷av一区| 日本一级一片免费视频| 亚洲精品乱码久久久久久日本蜜臀| 成人性生交大免费看| 不卡av免费在线观看| 亚洲熟女一区二区三区| 六月婷婷色综合| 激情网站五月天| 一道本一区二区| av免费看网址| 国内精品久久久久久久97牛牛 | 美日韩精品免费| 伊人精品综合| dy888夜精品国产专区| 99久久这里有精品| 成人网中文字幕| 国产aa精品| 96sao精品视频在线观看| 国产91在线播放精品| 国产精品美女久久久免费| 伊人久久视频| 欧美专区第一页| а√天堂8资源在线| 国语自产精品视频在线看抢先版图片| 在线三级中文| 欧美精品国产精品日韩精品| 色呦呦在线看| 欧美精品激情blacked18| 乱插在线www| 久久久久久久国产精品| 国产丝袜视频在线播放| 97婷婷大伊香蕉精品视频| 日本不卡免费高清视频在线| 7777免费精品视频| 亚洲国产成人二区| 国产精品18久久久久久首页狼| 大胆人体一区二区| 国产精品入口夜色视频大尺度 | 337p亚洲精品色噜噜| 国产欧美综合视频| 欧美大片一区二区| 手机在线不卡av| 亚洲女人初尝黑人巨大| 成人在线播放视频| 久久亚洲精品视频| 黄色在线看片| 2019av中文字幕| 日韩国产网站| 成人在线激情视频| 哺乳挤奶一区二区三区免费看| 国产综合欧美在线看| 免费av一区二区三区四区| 视频一区二区三区在线观看| 97精品国产| 国产天堂视频在线观看| 国产亚洲高清视频| 簧片在线免费看| 国产成人精品一区二区三区四区| 大尺度做爰床戏呻吟舒畅| 久久久国产午夜精品| 亚洲人与黑人屁股眼交| 亚洲在线视频免费观看| 国产免费一级视频| 在线不卡一区二区| 手机看片1024日韩| 中文字幕亚洲综合久久筱田步美| 肉体视频在线| 国产成人拍精品视频午夜网站| 95精品视频| 久久99欧美| 亚洲国产精品日韩专区av有中文 | 波多野一区二区| 国产精品男人的天堂| 蜜桃在线一区| 欧美日韩电影一区二区三区| 亚洲激情中文| 成年人免费大片| 成人午夜在线免费| 国产精品麻豆免费版现看视频| 亚洲第一搞黄网站| 在线观看免费高清视频| 日韩精品中文字幕久久臀| 老司机在线看片网av| 热re99久久精品国产66热| 狂野欧美xxxx韩国少妇| 日本一区精品| 亚洲黄色一区| 午夜一级免费视频| 国产欧美精品日韩区二区麻豆天美| 免费一级特黄特色大片| 欧美美女一区二区在线观看| 你懂的免费在线观看视频网站| 欧美刺激性大交免费视频| 日本美女久久| 开心色怡人综合网站| 亚洲一级特黄| 欧洲在线免费视频| 欧美激情在线观看视频免费| 日本一级黄色录像| 日韩亚洲欧美成人一区| 午夜小视频在线| 国产精品户外野外| 蜜桃成人av| 久久久久久久久久久久久国产精品| 国产福利一区二区三区视频| 亚洲欧美另类日本| 欧美性一二三区| 国产资源在线观看| 91成人性视频| 国产美女撒尿一区二区| 91视频 - 88av| 国产精品99久久久久久似苏梦涵 | 色综合久久一区二区三区| 欧美精品第三页| 26uuu色噜噜精品一区| 日本中文字幕免费| 欧美精品一区二区三区蜜臀| av电影免费在线观看| 91麻豆国产精品| 羞羞答答成人影院www| 性生活免费在线观看| 国产女同互慰高潮91漫画| 超碰在线观看91| 亚洲视屏在线播放| 婷婷激情一区| 日本一区视频在线| 日本欧美一区二区在线观看| 亚洲精品午夜视频| 欧美影视一区在线| 在线观看麻豆| 91精品视频在线| 一区二区三区四区在线观看国产日韩| 特级黄色片视频| 亚洲一区二区三区爽爽爽爽爽| www香蕉视频| 91国内在线视频| 久草在线成人| 中文字幕一区二区三区四区在线视频| 国产精品欧美一级免费| 亚洲一区精品在线观看| 久久综合免费视频| 亚洲va欧美va人人爽成人影院| 亚洲精品久久久久久久蜜桃臀| 北条麻妃国产九九精品视频| 国产一级片毛片| 一区二区三欧美| 日韩电影精品| 久久综合亚洲精品| av电影天堂一区二区在线观看| 女人十八岁毛片| 尤物精品国产第一福利三区| 日韩五码电影| 日产精品久久久久久久蜜臀| 9人人澡人人爽人人精品| 亚洲高清视频免费观看| 久久精品色欧美aⅴ一区二区| 超碰在线一区| 日本精品久久久久中文字幕| 国产精品白丝在线| 可以免费观看的毛片| 日韩av成人在线| 久久久久亚洲| 青青草视频成人| 337p亚洲精品色噜噜噜| 女人让男人操自己视频在线观看 | 亚洲精选国产| 黄大色黄女片18免费| 日韩欧美电影在线| 成人黄色免费短视频| 色婷婷777777仙踪林| ww亚洲ww在线观看国产| 国产精品国产三级国产aⅴ| 97视频在线观看成人| 婷婷激情图片久久| 亚洲永久无码7777kkk| 欧美二区三区91| 竹内纱里奈兽皇系列在线观看| 国产福利片一区二区| 久久综合久久鬼色中文字|