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

Android快速實現美團、餓了么首頁分頁導航菜單功能

移動開發 Android
前段時間公司移動端App新增一個模塊,類似美團團購的功能,首頁有個類似美團的分頁菜單的功能,用過美團和餓了么的app的童鞋應該清楚這一功能。首頁菜單可以分頁切換,類似我們的banner廣告切換效果,只不過只能手動切換。

前段時間公司移動端App新增一個模塊,類似美團團購的功能,首頁有個類似美團的分頁菜單的功能,用過美團和餓了么的app的童鞋應該清楚這一功能。首頁菜單可以分頁切換,類似我們的banner廣告切換效果,只不過只能手動切換。所以整個分頁效果,我們可以采用Viewpager實現,里面的菜單項我們則可以采用RecyclerView實現,動態改變里面的菜單項,以后產品汪要改需求也是一兩行代碼能搞定的事,是不是很機智。所以今天我們這個首頁分頁菜單效果,可以采用ViewPager+RecyclerView實現,思路既然已經有了,那我們就開整吧。首先我們先看下實現的效果圖。

Android快速實現美團、餓了么首頁分頁導航菜單功能

Android快速實現美團、餓了么首頁分頁導航菜單功能

Android快速實現美團、餓了么首頁分頁導航菜單功能

首頁布局文件,分頁指示器是單獨封裝的一個控件,后面會把代碼貼出來

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.               xmlns:app="http://schemas.android.com/apk/res-auto" 
  4.               android:id="@+id/home_entrance" 
  5.               android:layout_width="match_parent" 
  6.               android:layout_height="wrap_content" 
  7.               android:orientation="vertical"
  8.  
  9.     <android.support.v4.view.ViewPager 
  10.         android:id="@+id/main_home_entrance_vp" 
  11.         android:layout_width="match_parent" 
  12.         android:layout_height="wrap_content"/> 
  13.  
  14.     <com.stx.xhb.meituancategorydemo.widget.IndicatorView 
  15.         android:id="@+id/main_home_entrance_indicator" 
  16.         android:layout_width="match_parent" 
  17.         android:layout_height="32dp" 
  18.         android:layout_marginLeft="16dp" 
  19.         android:layout_gravity="bottom" 
  20.         android:layout_marginRight="16dp" 
  21.         app:gravity="0" 
  22.         app:indicatorColor="#668b8989" 
  23.         app:indicatorColorSelected="#FF5722" 
  24.         app:indicatorWidth="6"/> 
  25.  
  26. </LinearLayout> 

ViewPager中的子控件RecyclerView

  1. item_home_entrance_vp.xml  
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <android.support.v7.widget.RecyclerView xmlns:android="http://schemas.android.com/apk/res/android" 
  3.                                         android:layout_width="match_parent" 
  4.                                         android:layout_height="wrap_content"/> 

接下來就是RecyclerView的菜單項的布局文件 

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.              android:layout_width="match_parent" 
  4.              android:layout_height="match_parent"
  5.  
  6.     <LinearLayout 
  7.         android:layout_width="match_parent" 
  8.         android:layout_height="match_parent" 
  9.         android:gravity="center_horizontal" 
  10.         android:orientation="vertical" 
  11.         android:padding="6dp"
  12.  
  13.         <ImageView 
  14.             android:id="@+id/entrance_image" 
  15.             android:layout_width="wrap_content" 
  16.             android:layout_height="0dp" 
  17.             android:layout_margin="2dp" 
  18.             android:layout_weight="1" 
  19.             android:scaleType="fitCenter"/> 
  20.  
  21.         <TextView 
  22.             android:id="@+id/entrance_name" 
  23.             android:layout_width="wrap_content" 
  24.             android:layout_height="wrap_content" 
  25.             android:layout_margin="2dp" 
  26.             android:singleLine="true" 
  27.             android:textColor="#80000000" 
  28.             android:textSize="12dp"/> 
  29.     </LinearLayout> 
  30.  
  31.     <View 
  32.         android:layout_width="match_parent" 
  33.         android:layout_height="match_parent" 
  34.         android:background="@drawable/selector_trans_divider"/> 
  35.  
  36. </FrameLayout> 

布局都創建好了,接下來我們一起來看看里面的具體實現代碼了。由于我們的菜單項有一個icon和名稱name,為了方便管理,我們可以創建一個菜單項實體類ModelHomeEntrance.class

  1. /** 
  2.  * Author: Mr.xiao on 2017/5/23 
  3.  * 
  4.  * @mail:xhb_199409@163.com 
  5.  * @github:https://github.com/xiaohaibin 
  6.  * @describe:菜單項實體類 
  7.  */ 
  8. public class ModelHomeEntrance { 
  9.     private String name = ""
  10.     private int image; 
  11.  
  12.     public ModelHomeEntrance(String nameint image) { 
  13.         this.image = image; 
  14.         this.name = name
  15.     } 
  16.  
  17.  
  18.     public int getImage() { 
  19.         return image; 
  20.     } 
  21.  
  22.     public String getName() { 
  23.         return name
  24.     } 
  25.  

由于我們分頁效果是以ViewPager實現的,所以我們要創建一個ViewPager的適配器,CagegoryViewPagerAdapter.Class

  1. package com.stx.xhb.meituancategorydemo.adapter; 
  2.  
  3. import android.support.v4.view.PagerAdapter; 
  4. import android.view.View
  5. import android.view.ViewGroup; 
  6.  
  7. import java.util.List; 
  8.  
  9. /** 
  10.  * Created by jxnk25 on 2016/9/21. 
  11.  * 
  12.  * @link https://xiaohaibin.github.io/ 
  13.  * @email: xhb_199409@163.com 
  14.  * @github: https://github.com/xiaohaibin 
  15.  * @description:  首頁分類ViewPager適配器 
  16.  */ 
  17. public class CagegoryViewPagerAdapter extends PagerAdapter { 
  18.  
  19.     private List<View> mViewList; 
  20.     public CagegoryViewPagerAdapter(List<View> mViewList) { 
  21.         this.mViewList = mViewList; 
  22.     } 
  23.  
  24.     @Override 
  25.     public void destroyItem(ViewGroup container, int position, Object object) { 
  26.         container.removeView(mViewList.get(position)); 
  27.     } 
  28.  
  29.     @Override 
  30.     public Object instantiateItem(ViewGroup container, int position) { 
  31.         container.addView(mViewList.get(position)); 
  32.         return (mViewList.get(position)); 
  33.     } 
  34.  
  35.     @Override 
  36.     public int getCount() { 
  37.         if (mViewList == null
  38.             return 0; 
  39.         return mViewList.size(); 
  40.     } 
  41.  
  42.     @Override 
  43.     public boolean isViewFromObject(View view, Object object) { 
  44.         return view == object; 
  45.     } 

ViewPager的適配器有了,我們還得再創建一個RecyclerView的菜單項列表適配器,EntranceAdapter.Class 

  1. package com.stx.xhb.meituancategorydemo.adapter; 
  2.  
  3. import android.content.Context; 
  4. import android.support.v7.widget.RecyclerView; 
  5. import android.view.LayoutInflater; 
  6. import android.view.View
  7. import android.view.ViewGroup; 
  8. import android.widget.ImageView; 
  9. import android.widget.LinearLayout; 
  10. import android.widget.TextView; 
  11.  
  12. import com.stx.xhb.meituancategorydemo.R; 
  13. import com.stx.xhb.meituancategorydemo.model.ModelHomeEntrance; 
  14. import com.stx.xhb.meituancategorydemo.utils.ScreenUtil; 
  15.  
  16. import java.util.List; 
  17.  
  18. /** 
  19.  * Author: Mr.xiao on 2017/5/23 
  20.  * 
  21.  * @mail:xhb_199409@163.com 
  22.  * @github:https://github.com/xiaohaibin 
  23.  * @describe: 首頁分頁菜單項列表適配器 
  24.  */ 
  25. public class EntranceAdapter extends RecyclerView.Adapter<EntranceAdapter.EntranceViewHolder> { 
  26.  
  27.     private List<ModelHomeEntrance> mDatas; 
  28.  
  29.     /** 
  30.      * 頁數下標,從0開始(通俗講第幾頁) 
  31.      */ 
  32.     private int mIndex; 
  33.  
  34.     /** 
  35.      * 每頁顯示最大條目個數 
  36.      */ 
  37.     private int mPageSize; 
  38.  
  39.     private Context mContext; 
  40.  
  41.     private final LayoutInflater mLayoutInflater; 
  42.  
  43.     private List<ModelHomeEntrance> homeEntrances; 
  44.  
  45.     public EntranceAdapter(Context context, List<ModelHomeEntrance> datas, int indexint pageSize) { 
  46.         this.mContext = context; 
  47.         this.homeEntrances = datas; 
  48.         mPageSize = pageSize; 
  49.         mDatas = datas; 
  50.         mIndex = index
  51.         mLayoutInflater = LayoutInflater.from(context); 
  52.  
  53.     } 
  54.  
  55.     @Override 
  56.     public EntranceViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
  57.         return new EntranceViewHolder(mLayoutInflater.inflate(R.layout.item_home_entrance, null)); 
  58.     } 
  59.  
  60.     @Override 
  61.     public void onBindViewHolder(EntranceViewHolder holder, final int position) { 
  62.         /** 
  63.          * 在給View綁定顯示的數據時,計算正確的position = position + mIndex * mPageSize, 
  64.          */ 
  65.         final int pos = position + mIndex * mPageSize; 
  66.         holder.entranceNameTextView.setText(homeEntrances.get(pos).getName()); 
  67.         holder.entranceIconImageView.setImageResource(homeEntrances.get(pos).getImage()); 
  68.         holder.itemView.setOnClickListener(new View.OnClickListener() { 
  69.             @Override 
  70.             public void onClick(View v) { 
  71.                 ModelHomeEntrance entrance = homeEntrances.get(pos); 
  72.                 // TODO: 2017/5/24 點擊事件處理 
  73.             } 
  74.         }); 
  75.     } 
  76.  
  77.     @Override 
  78.     public int getItemCount() { 
  79.         return mDatas.size() > (mIndex + 1) * mPageSize ? mPageSize : (mDatas.size() - mIndex * mPageSize); 
  80.     } 
  81.  
  82.     @Override 
  83.     public long getItemId(int position) { 
  84.         return position + mIndex * mPageSize; 
  85.     } 
  86.  
  87.     class EntranceViewHolder extends RecyclerView.ViewHolder { 
  88.  
  89.         private TextView entranceNameTextView; 
  90.         private ImageView entranceIconImageView; 
  91.  
  92.         public EntranceViewHolder(View itemView) { 
  93.             super(itemView); 
  94.             entranceIconImageView = (ImageView) itemView.findViewById(R.id.entrance_image); 
  95.             entranceNameTextView = (TextView) itemView.findViewById(R.id.entrance_name); 
  96.             LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, (int) ((float) ScreenUtil.getScreenWidth() / 4.0f)); 
  97.             itemView.setLayoutParams(layoutParams); 
  98.         } 
  99.     } 

最后就是我們的MainActivity的代碼實現了,我們整體的思路其實就是需要根據首頁菜單項的數據源進行分頁顯示,首頁確定單頁菜單顯示數量,總數除以單頁顯示數量取整就是顯示頁數,我們再根據頁數來創建RecyclerView將其添加到ViewPager的適配器中,下面就讓我們一起來看看具體是如何的。 

  1. package com.stx.xhb.meituancategorydemo; 
  2.  
  3. import android.os.Bundle; 
  4. import android.support.v4.view.ViewPager; 
  5. import android.support.v7.app.AppCompatActivity; 
  6. import android.support.v7.widget.GridLayoutManager; 
  7. import android.support.v7.widget.RecyclerView; 
  8. import android.view.LayoutInflater; 
  9. import android.view.View
  10. import android.widget.FrameLayout; 
  11. import android.widget.LinearLayout; 
  12.  
  13. import com.stx.xhb.meituancategorydemo.adapter.CagegoryViewPagerAdapter; 
  14. import com.stx.xhb.meituancategorydemo.adapter.EntranceAdapter; 
  15. import com.stx.xhb.meituancategorydemo.model.ModelHomeEntrance; 
  16. import com.stx.xhb.meituancategorydemo.utils.ScreenUtil; 
  17. import com.stx.xhb.meituancategorydemo.widget.IndicatorView; 
  18.  
  19. import java.util.ArrayList; 
  20. import java.util.List; 
  21.  
  22. public class MainActivity extends AppCompatActivity { 
  23.     public static final int HOME_ENTRANCE_PAGE_SIZE = 10;//首頁菜單單頁顯示數量 
  24.     private ViewPager entranceViewPager; 
  25.     private LinearLayout homeEntranceLayout; 
  26.     private List<ModelHomeEntrance> homeEntrances; 
  27.     private IndicatorView entranceIndicatorView; 
  28.  
  29.     @Override 
  30.     protected void onCreate(Bundle savedInstanceState) { 
  31.         super.onCreate(savedInstanceState); 
  32.         setContentView(R.layout.activity_main); 
  33.         initData(); 
  34.         initView(); 
  35.         init(); 
  36.     } 
  37.  
  38.  
  39.     private void initView() { 
  40.         homeEntranceLayout = (LinearLayout) findViewById(R.id.home_entrance); 
  41.         entranceViewPager = (ViewPager) findViewById(R.id.main_home_entrance_vp); 
  42.         entranceIndicatorView = (IndicatorView) findViewById(R.id.main_home_entrance_indicator); 
  43.     } 
  44.  
  45.  
  46.     private void initData() { 
  47.         homeEntrances = new ArrayList<>(); 
  48.         homeEntrances.add(new ModelHomeEntrance("美食", R.mipmap.ic_category_0)); 
  49.         homeEntrances.add(new ModelHomeEntrance("電影", R.mipmap.ic_category_1)); 
  50.         homeEntrances.add(new ModelHomeEntrance("酒店住宿", R.mipmap.ic_category_2)); 
  51.         homeEntrances.add(new ModelHomeEntrance("生活服務", R.mipmap.ic_category_3)); 
  52.         homeEntrances.add(new ModelHomeEntrance("KTV", R.mipmap.ic_category_4)); 
  53.         homeEntrances.add(new ModelHomeEntrance("旅游", R.mipmap.ic_category_5)); 
  54.         homeEntrances.add(new ModelHomeEntrance("學習培訓", R.mipmap.ic_category_6)); 
  55.         homeEntrances.add(new ModelHomeEntrance("汽車服務", R.mipmap.ic_category_7)); 
  56.         homeEntrances.add(new ModelHomeEntrance("攝影寫真", R.mipmap.ic_category_8)); 
  57.         homeEntrances.add(new ModelHomeEntrance("休閑娛樂", R.mipmap.ic_category_10)); 
  58.         homeEntrances.add(new ModelHomeEntrance("麗人", R.mipmap.ic_category_11)); 
  59.         homeEntrances.add(new ModelHomeEntrance("運動健身", R.mipmap.ic_category_12)); 
  60.         homeEntrances.add(new ModelHomeEntrance("大保健", R.mipmap.ic_category_13)); 
  61.         homeEntrances.add(new ModelHomeEntrance("團購", R.mipmap.ic_category_14)); 
  62.         homeEntrances.add(new ModelHomeEntrance("景點", R.mipmap.ic_category_16)); 
  63.         homeEntrances.add(new ModelHomeEntrance("全部分類", R.mipmap.ic_category_15)); 
  64.     } 
  65.  
  66.     private void init() { 
  67.         LinearLayout.LayoutParams layoutParams12 = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, (int) ((float) ScreenUtil.getScreenWidth() / 2.0f)); 
  68.  
  69.         //首頁菜單分頁 
  70.         FrameLayout.LayoutParams entrancelayoutParams = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, (int) ((float) ScreenUtil.getScreenWidth() / 2.0f + 70)); 
  71.         homeEntranceLayout.setLayoutParams(entrancelayoutParams); 
  72.         entranceViewPager.setLayoutParams(layoutParams12); 
  73.         LayoutInflater inflater = LayoutInflater.from(this); 
  74.         //將RecyclerView放至ViewPager中: 
  75.         int pageSize = HOME_ENTRANCE_PAGE_SIZE; 
  76.         //一共的頁數等于 總數/每頁數量,并取整。 
  77.         int pageCount = (int) Math.ceil(homeEntrances.size() * 1.0 / pageSize); 
  78.         List<View> viewList = new ArrayList<View>(); 
  79.         for (int index = 0; index < pageCount; index++) { 
  80.             //每個頁面都是inflate出一個新實例 
  81.             RecyclerView recyclerView = (RecyclerView) inflater.inflate(R.layout.item_home_entrance_vp, entranceViewPager, false); 
  82.             recyclerView.setLayoutParams(layoutParams12); 
  83.             recyclerView.setLayoutManager(new GridLayoutManager(MainActivity.this, 5)); 
  84.             EntranceAdapter entranceAdapter = new EntranceAdapter(MainActivity.this, homeEntrances, index, HOME_ENTRANCE_PAGE_SIZE); 
  85.             recyclerView.setAdapter(entranceAdapter); 
  86.             viewList.add(recyclerView); 
  87.         } 
  88.         CagegoryViewPagerAdapter adapter = new CagegoryViewPagerAdapter(viewList); 
  89.         entranceViewPager.setAdapter(adapter); 
  90.         entranceIndicatorView.setIndicatorCount(entranceViewPager.getAdapter().getCount()); 
  91.         entranceIndicatorView.setCurrentIndicator(entranceViewPager.getCurrentItem()); 
  92.         entranceViewPager.addOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() { 
  93.             @Override 
  94.             public void onPageSelected(int position) { 
  95.                 entranceIndicatorView.setCurrentIndicator(position); 
  96.             } 
  97.         }); 
  98.     } 

以上就是實現首頁分頁菜單效果的主要實現代碼,這種分頁菜單效果在我們的應用中也比較常見,說不定啥時候公司產品汪就拿手機過來讓你照著美團之類實現這種效果。

 

責任編輯:未麗燕 來源: 安卓巴士
相關推薦

2025-09-11 13:13:43

2015-03-31 18:19:37

餓了么動畫效果

2015-11-13 11:27:54

2023-07-13 09:16:47

循環隊列指針front?

2018-01-03 09:57:19

異地雙活數據庫

2017-12-05 15:03:45

人工智能餓了么大數據

2025-03-18 08:30:00

Spring開發java

2017-07-21 14:48:47

AI物流O2O

2022-02-14 16:08:15

開源項目線程池動態可監控

2021-10-24 06:49:08

線程池中間件開源

2022-01-11 15:35:22

數字人民幣子錢包區塊鏈

2009-10-28 09:19:13

Eclipse 3.5項目導航

2024-05-16 17:58:30

線程任務線程通訊線程池

2018-11-29 09:36:56

大數據調度系統

2017-10-27 15:44:24

餓了么張龍前端基礎設施

2025-01-09 10:54:27

2015-11-16 16:00:21

2017-06-12 09:13:02

餓了么技術運營運維

2018-08-17 09:14:43

餓了么容器演進

2016-08-26 22:36:18

大數據
點贊
收藏

51CTO技術棧公眾號

国产一区精品福利| 亚洲成a人片在线| 久久福利影院| 欧美成人欧美edvon| 国产男女免费视频| 九色视频在线播放| 国产酒店精品激情| 欧美在线视频播放| 手机在线中文字幕| 麻豆一区二区| 欧美一区二区在线视频| 少妇人妻大乳在线视频| 98在线视频| 粉嫩嫩av羞羞动漫久久久| 日本不卡视频在线播放| 欧美一区免费观看| 亚洲日产av中文字幕| 欧美精品丝袜久久久中文字幕| 国产一级做a爰片久久毛片男| 国产精品久久一区二区三区不卡| 国产在线视频精品一区| 日本中文字幕成人| 久久黄色免费网站| 日韩欧美1区| 日韩成人在线视频观看| 国产精品探花在线播放| free欧美| 欧美日韩在线视频一区| 777久久精品一区二区三区无码| 免费毛片在线| av福利精品导航| 亚洲精品女av网站| 亚洲一二区视频| 久久精品中文| 4388成人网| 国产一国产二国产三| 99久久99久久精品国产片桃花| 精品视频久久久久久| 性生交大片免费看l| 丁香久久综合| 欧美自拍偷拍午夜视频| 久久精品国产精品亚洲色婷婷| 欧美巨大xxxx做受沙滩| 《视频一区视频二区| 天堂一区二区三区| 毛片免费在线播放| 91女人视频在线观看| 国产91视觉| 成人免费视频国产| 国产精品18久久久久久久久 | 国产视频123区| 在线视频亚洲专区| 亚洲激情视频在线| 亚洲色图14p| 日韩高清电影免费| 日韩精品免费观看| 三级黄色片网站| 国产精品香蕉| 日韩国产一区三区| 少妇饥渴放荡91麻豆| 精品福利一区| 日韩大片免费观看视频播放| 亚洲国产精品自拍视频| 神马日本精品| 尤物九九久久国产精品的特点| 成人片黄网站色大片免费毛片| 国产91久久精品一区二区| 亚洲男人天堂古典| 久久久视频6r| 99国产**精品****| 欧美久久精品午夜青青大伊人| 国产黄色小视频网站| 亚洲欧美文学| 午夜精品一区二区三区视频免费看| 亚洲午夜精品国产| 成人动漫在线播放| 国产精品国产三级国产aⅴ中文| 一个色的综合| 国内高清免费在线视频| 精品国产成人在线| 欧美日韩大尺度| 婷婷激情成人| 精品国产电影一区二区| aa片在线观看视频在线播放| 青草国产精品| 欧美成年人在线观看| 久久精品视频日本| 丝袜美腿亚洲一区二区图片| 国产欧美精品一区二区三区-老狼 国产欧美精品一区二区三区介绍 国产欧美精品一区二区 | 巨大黑人极品videos精品| 欧美乱妇15p| 日本美女视频网站| 久久综合色占| 久久国产精品免费视频| 久草国产精品视频| 久久99精品国产| 精品国产乱码久久久久久88av| 麻豆av电影在线观看| 亚洲视频免费看| 黄色免费福利视频| 国产999精品在线观看| 亚洲成人久久一区| 色婷婷国产精品免| 精久久久久久| 国产一区二区香蕉| 天堂中文字幕在线| 17c精品麻豆一区二区免费| 国产av麻豆mag剧集| 欧美成人毛片| 日韩不卡在线观看| 三上悠亚作品在线观看| 免费国产自线拍一欧美视频| 亚洲影影院av| 国产精品ⅴa有声小说| 亚洲第一狼人社区| 992kp免费看片| 不卡av一区二区| 午夜精品一区二区三区av| 一女二男一黄一片| 国产午夜精品久久久久久久 | 免费精品视频最新在线| 国产一区二区高清视频| 哥也色在线视频| 欧美在线免费观看视频| 性色av蜜臀av色欲av| 欧美日本中文| 91精品久久久久久久久久入口| 男人天堂亚洲二区| 午夜影视日本亚洲欧洲精品| 蜜臀一区二区三区精品免费视频| 九九久久精品| 欧美一级淫片aaaaaaa视频| 国产黄色片免费| 亚洲欧洲中文日韩久久av乱码| 9l视频白拍9色9l视频| 九九综合在线| 日本一区二区不卡| 欧美另类自拍| 欧美日韩国产精品一区| 免费日本黄色网址| 亚洲国产国产亚洲一二三| 亚洲综合在线中文字幕| 免费黄色在线| 91精品国产综合久久久久久久| 亚洲AV无码成人精品区明星换面| 噜噜爱69成人精品| 日本精品一区二区三区高清 久久| a级片在线免费观看| 精品88久久久久88久久久| 九九热视频精品| 国产成人免费高清| www.九色.com| 麻豆一区二区| 欧日韩不卡在线视频| 青青青免费视频在线2| 大伊人狠狠躁夜夜躁av一区| 久久国产精品无码一级毛片 | 亚洲黄色尤物视频| 少妇无码av无码专区在线观看| 国产精品国产精品| 国产黑人绿帽在线第一区| 中文日韩电影网站| 日韩精品亚洲元码| 精品国产91久久久久久久妲己 | 你懂的在线观看视频网站| 日本视频免费观看| www.av成人| 成年人黄视频在线观看| 在线视频观看一区| 日韩毛片无码永久免费看| 爽爽淫人综合网网站| 亚洲蜜桃在线| 国产精品久久久久久久久久辛辛| 两个人的视频www国产精品| 国产aⅴ一区二区三区| 国产精品福利一区二区三区| 午夜啪啪小视频| 国一区二区在线观看| 国产麻豆日韩| 日韩精品影片| 久久视频免费观看| 亚洲国产精品国自产拍久久| 欧美日韩国产激情| 亚洲一二三精品| 国产麻豆精品95视频| 97超碰人人澡| 精品一区不卡| 国产66精品久久久久999小说| 在线中文字幕播放| 自拍偷拍亚洲在线| 性网爆门事件集合av| 欧美性生活大片免费观看网址| 337人体粉嫩噜噜噜| 国产成人精品一区二| 欧美日韩国产精品激情在线播放| 清纯唯美日韩| 国产区二精品视| 韩国理伦片久久电影网| 欧美—级a级欧美特级ar全黄| 精品三级久久久久久久电影聊斋| 91精品蜜臀在线一区尤物| 国产性xxxx高清| 国产精品午夜电影| 亚洲の无码国产の无码步美| 久久99精品国产91久久来源| 国产精品50p| 欧美伊人影院| 亚欧精品在线| 色橹橹欧美在线观看视频高清| 91香蕉亚洲精品| 亚洲va中文在线播放免费| 久久久亚洲精选| 毛片激情在线观看| 亚洲人成五月天| 视频一区二区免费| 91麻豆精品国产自产在线| 好吊色在线视频| 亚洲成人一区二区在线观看| 女同久久另类69精品国产| 2020国产成人综合网| 国产精品19p| 日韩黄色免费网站| 亚洲 高清 成人 动漫| 韩日视频一区| a级黄色片网站| 欧美电影一二区| 日产精品高清视频免费| 午夜先锋成人动漫在线| av资源站久久亚洲| 国产日韩在线观看视频| 国产精品入口夜色视频大尺度| 牛牛精品一区二区| 97视频在线看| av白虎一区| 欧美精品情趣视频| 2024最新电影在线免费观看| 日韩资源在线观看| 午夜激情在线观看| 中文字幕av一区二区三区谷原希美| 日本v片在线免费观看| 亚洲精品www久久久| 手机看片一区二区三区| 精品国产欧美一区二区| 精品人妻一区二区三区含羞草 | 能在线观看的av| 亚洲精品字幕| 777精品久无码人妻蜜桃| 1024成人| 男人日女人下面视频| 国产美女精品| 国模吧无码一区二区三区| 久久精品二区三区| 凹凸日日摸日日碰夜夜爽1| 免费精品视频| 国产aaaaa毛片| 麻豆一区二区在线| 中文字幕丰满乱码| 黄色在线观看网站| 视频在线观看免费影院欧美meiju| 国产精品嫩草影院com| 色哟哟视频在线| 成人午夜免费视频| 欧美一级片黄色| 久久久久久免费网| 长河落日免费高清观看| 自拍偷自拍亚洲精品播放| 久久精品黄色片| 亚洲国产成人av网| 国产成人综合欧美精品久久| 日本道精品一区二区三区| 中文字幕免费播放| 91精品国产综合久久久久| 亚洲免费不卡视频| 日韩精品有码在线观看| 成人在线观看网站| 日韩在线高清视频| 国产第一页在线| 日本亚洲欧洲色| 高清一区二区中文字幕| 精品国产乱码久久久久久久软件| 色棕色天天综合网| 丰满女人性猛交| a91a精品视频在线观看| 久久综合久久色| 国产乱码精品1区2区3区| 日韩www视频| 国产精品国产精品国产专区不蜜 | 色综合久久综合中文综合网| 中文无码av一区二区三区| 日韩一区二区视频| 色视频免费在线观看| xxav国产精品美女主播| a'aaa级片在线观看| 国产精品吴梦梦| 成人影院中文字幕| 亚洲成人18| 亚洲国产片色| 亚欧激情乱码久久久久久久久| 国产iv一区二区三区| 高清国产在线观看| 亚洲一区二区av电影| 久久久久精彩视频| 精品美女在线观看| 在线免费观看黄色| **欧美日韩vr在线| 国产精品视频一区视频二区| 欧美高清视频一区| 欧美日本国产| 五月激情五月婷婷| 久久亚洲欧美国产精品乐播| 男女羞羞免费视频| 欧美中文字幕一二三区视频| 日本黄色免费视频| 日韩在线免费视频| 成人午夜精品| 九九99玖玖| 欧美日韩网址| 免费av不卡在线| 久久久欧美精品sm网站| 日韩精品视频免费播放| 日韩情涩欧美日韩视频| yjizz视频网站在线播放| 97在线免费观看| 亚洲天堂av资源在线观看| 一区二区三区四区国产| 天堂av在线一区| av在线网站观看| 天天影视网天天综合色在线播放| 精品免费久久久| 欧美成人激情视频免费观看| 青青在线精品| 香蕉久久夜色| 日韩一区欧美二区| 波多野结衣一本| 欧美视频裸体精品| 日韩一级片免费看| 国内精品400部情侣激情| 天堂av一区| av影院在线播放| 国产精品自拍av| 91aaa在线观看| 精品日韩一区二区三区免费视频| 菠萝蜜视频国产在线播放| 91在线观看免费高清| 97精品在线| 佐山爱在线视频| 亚洲一区在线视频| 黄色av网址在线| 久久久久国产一区二区三区| 大型av综合网站| 男女激情无遮挡| 国产三区在线成人av| 波多野结衣一本一道| 一区二区在线视频播放| 国产一区高清| 亚洲免费av网| 国产精品99久久久久久久女警| 久久久久成人片免费观看蜜芽| 精品日韩一区二区| 两个人看的在线视频www| 欧美一区二区三区在线播放| 日本不卡的三区四区五区| 国产一级淫片久久久片a级| 在线观看91av| а_天堂中文在线| 欧美另类一区| 青青草97国产精品免费观看| 国产免费一区二区三区四区| 欧美本精品男人aⅴ天堂| 99热99re6国产在线播放| 欧美亚洲一级二级| 免费看黄色91| 久久一二三四区| 国产丝袜视频一区| 成人一级视频| 国产精品三级一区二区| 99精品黄色片免费大全| 中文字幕精品无码亚| 欧美成人激情视频免费观看| 日本一二三区视频| 国产成人精品一区二区免费看京| 视频一区国产精品| 九九国产精品视频| 欧美日韩国产精品一区二区三区| 日韩av综合网| 四虎国产精品成人免费影视| 国产精品videossex国产高清| 久久综合色鬼综合色| 91极品身材尤物theporn| 国语自产精品视频在线看一大j8| 国产一区二区三区不卡视频网站| 亚洲一级片免费观看| 欧美日韩亚洲天堂| 搞黄网站在线观看| 美日韩免费视频| 国产精品99久久久久久似苏梦涵| 亚洲大尺度在线观看| 色综合久久久888| 欧美少妇性xxxx| 亚洲天堂美女视频|