日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android之Fragment(二)

發布時間:2024/7/23 Android 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android之Fragment(二) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文主要內容

  • 如何管理Fragment回退棧
  • Fragment如何與Activity交互
  • Fragment與Activity交互的最佳實踐
  • 沒有視圖的Fragment的用處
  • 使用Fragment創建對話框
  • 如何與ActionBar,MenuItem集成等
  • 管理Fragment回退棧

    類似與Android系統為Activity維護一個任務棧,我們也可以通過Activity維護一個回退棧來保存每次Fragment事務發生的變化。如果你將Fragment任務添加到回退棧,當用戶點擊后退按鈕時,將看到上一次的保存的Fragment。一旦Fragment完全從后退棧中彈出,用戶再次點擊后退鍵,則退出當前Activity。
    看這樣一個效果圖:

    如何添加一個Fragment事務到回退棧:

    FragmentTransaction.addToBackStack(String)
    下面講解代碼:很明顯一共是3個Fragment和一個Activity.
    先看Activity的布局文件:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <FrameLayout android:id="@+id/id_content" android:layout_width="fill_parent" android:layout_height="fill_parent" > </FrameLayout> </RelativeLayout>

    不同的Fragment就在這個FrameLayout中顯示。

    MainActivity.java

    package com.zhy.zhy_fragments; import android.app.Activity; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.view.Window; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); tx.add(R.id.id_content, new FragmentOne(),"ONE"); tx.commit(); } }

    很簡單,直接將FragmentOne添加到布局文件中的FrameLayout中,注意這里并沒有調用FragmentTransaction.addToBackStack(String),因為我不喜歡在當前顯示時,點擊Back鍵出現白板。而是正確的相應Back鍵,即退出我們的Activity.

    下面是FragmentOne

    package com.zhy.zhy_fragments; import android.app.Fragment; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.Button; public class FragmentOne extends Fragment implements OnClickListener { private Button mBtn; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_one, container, false); mBtn = (Button) view.findViewById(R.id.id_fragment_one_btn); mBtn.setOnClickListener(this); return view; } @Override public void onClick(View v) { FragmentTwo fTwo = new FragmentTwo(); FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); tx.replace(R.id.id_content, fTwo, "TWO"); tx.addToBackStack(null); tx.commit(); } }

    我們在點擊FragmentOne中的按鈕時,使用了replace方法,如果你看了前一篇博客,一定記得replace是remove和add的合體,并且如果不添加事務到回退棧,前一個Fragment實例會被銷毀。這里很明顯,我們調用tx.addToBackStack(null);將當前的事務添加到了回退棧,所以FragmentOne實例不會被銷毀,但是視圖層次依然會被銷毀,即會調用onDestoryView和onCreateView,證據就是:仔細看上面的效果圖,我們在跳轉前在文本框輸入的內容,在用戶Back得到第一個界面的時候不見了。

    接下來FragmentTwo

    package com.zhy.zhy_fragments; import android.app.Fragment; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.Button; public class FragmentTwo extends Fragment implements OnClickListener { private Button mBtn ; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_two, container, false); mBtn = (Button) view.findViewById(R.id.id_fragment_two_btn); mBtn.setOnClickListener(this); return view ; } @Override public void onClick(View v) { FragmentThree fThree = new FragmentThree(); FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); tx.hide(this); tx.add(R.id.id_content , fThree, "THREE"); // tx.replace(R.id.id_content, fThree, "THREE"); tx.addToBackStack(null); tx.commit(); } }

    這里點擊時,我們沒有使用replace,而是先隱藏了當前的Fragment,然后添加了FragmentThree的實例,最后將事務添加到回退棧。這樣做的目的是為了給大家提供一種方案:如果不希望視圖重繪該怎么做,請再次仔細看效果圖,我們在FragmentTwo的EditText填寫的內容,用戶Back回來時,數據還在~~~

    最后FragmentThree就是簡單的Toast了:

    package com.zhy.zhy_fragments; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.Button; import android.widget.Toast; public class FragmentThree extends Fragment implements OnClickListener { private Button mBtn; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_three, container, false); mBtn = (Button) view.findViewById(R.id.id_fragment_three_btn); mBtn.setOnClickListener(this); return view; } @Override public void onClick(View v) { Toast.makeText(getActivity(), " i am a btn in Fragment three", Toast.LENGTH_SHORT).show(); } }

    好了,經過上面的介紹,應該已經知道Fragment回退棧是怎么一回事了,以及hide,replace等各自的應用的場景。

    這里極其注意一點:上面的整體代碼不具有任何參考價值,純粹為了顯示回退棧,在后面講解了Fragment與Activity通信以后,會重構上面的代碼!

    Fragment與Activity通信

    因為所有的Fragment都是依附于Activity的,所以通信起來并不復雜,大概歸納為:

    a、如果你Activity中包含自己管理的Fragment的引用,可以通過引用直接訪問所有的Fragment的public方法

    b、如果Activity中未保存任何Fragment的引用,那么沒關系,每個Fragment都有一個唯一的TAG或者ID,可以通過getFragmentManager.findFragmentByTag()或者findFragmentById()獲得任何Fragment實例,然后進行操作。

    c、在Fragment中可以通過getActivity得到當前綁定的Activity的實例,然后進行操作。

    注:如果在Fragment中需要Context,可以通過調用getActivity(),如果該Context需要在Activity被銷毀后還存在,則使用getActivity().getApplicationContext()。

    Fragment與Activity通信的最佳實踐

    因為要考慮Fragment的重復使用,所以必須降低Fragment與Activity的耦合,而且Fragment更不應該直接操作別的Fragment,畢竟Fragment操作應該由它的管理者Activity來決定。
    下面我通過兩種方式的代碼,分別重構,FragmentOne和FragmentTwo的點擊事件,以及Activity對點擊事件的響應:

    首先看FragmentOne

    package com.zhy.zhy_fragments; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.Button; public class FragmentOne extends Fragment implements OnClickListener { private Button mBtn; /** * 設置按鈕點擊的回調 * @author zhy * */ public interface FOneBtnClickListener { void onFOneBtnClick(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_one, container, false); mBtn = (Button) view.findViewById(R.id.id_fragment_one_btn); mBtn.setOnClickListener(this); return view; } /** * 交給宿主Activity處理,如果它希望處理 */ @Override public void onClick(View v) { if (getActivity() instanceof FOneBtnClickListener) { ((FOneBtnClickListener) getActivity()).onFOneBtnClick(); } } }

    可以看到現在的FragmentOne不和任何Activity耦合,任何Activity都可以使用;并且我們聲明了一個接口,來回調其點擊事件,想要管理其點擊事件的Activity實現此接口就即可。可以看到我們在onClick中首先判斷了當前綁定的Activity是否實現了該接口,如果實現了則調用。

    再看FragmentTwo

    package com.zhy.zhy_fragments; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.Button; public class FragmentTwo extends Fragment implements OnClickListener { private Button mBtn ; private FTwoBtnClickListener fTwoBtnClickListener ; public interface FTwoBtnClickListener { void onFTwoBtnClick(); } //設置回調接口 public void setfTwoBtnClickListener(FTwoBtnClickListener fTwoBtnClickListener) { this.fTwoBtnClickListener = fTwoBtnClickListener; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_two, container, false); mBtn = (Button) view.findViewById(R.id.id_fragment_two_btn); mBtn.setOnClickListener(this); return view ; } @Override public void onClick(View v) { if(fTwoBtnClickListener != null) { fTwoBtnClickListener.onFTwoBtnClick(); } } }

    與FragmentOne極其類似,但是我們提供了setListener這樣的方法,意味著Activity不僅需要實現該接口,還必須顯示調用mFTwo.setfTwoBtnClickListener(this)。

    最后看Activity :

    package com.zhy.zhy_fragments; import android.app.Activity; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.view.Window; import com.zhy.zhy_fragments.FragmentOne.FOneBtnClickListener; import com.zhy.zhy_fragments.FragmentTwo.FTwoBtnClickListener; public class MainActivity extends Activity implements FOneBtnClickListener, FTwoBtnClickListener { private FragmentOne mFOne; private FragmentTwo mFTwo; private FragmentThree mFThree; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); mFOne = new FragmentOne(); FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); tx.add(R.id.id_content, mFOne, "ONE"); tx.commit(); } /** * FragmentOne 按鈕點擊時的回調 */ @Override public void onFOneBtnClick() { if (mFTwo == null) { mFTwo = new FragmentTwo(); mFTwo.setfTwoBtnClickListener(this); } FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); tx.replace(R.id.id_content, mFTwo, "TWO"); tx.addToBackStack(null); tx.commit(); } /** * FragmentTwo 按鈕點擊時的回調 */ @Override public void onFTwoBtnClick() { if (mFThree == null) { mFThree = new FragmentThree(); } FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); tx.hide(mFTwo); tx.add(R.id.id_content, mFThree, "THREE"); // tx.replace(R.id.id_content, fThree, "THREE"); tx.addToBackStack(null); tx.commit(); } }

    代碼重構結束,與開始的效果一模一樣。上面兩種通信方式都是值得推薦的,隨便選擇一種自己喜歡的。這里再提一下:雖然Fragment和Activity可以通過getActivity與findFragmentByTag或者findFragmentById,進行任何操作,甚至在Fragment里面操作另外的Fragment,但是沒有特殊理由是絕對不提倡的。Activity擔任的是Fragment間類似總線一樣的角色,應當由它決定Fragment如何操作。另外雖然Fragment不能響應Intent打開,但是Activity可以,Activity可以接收Intent,然后根據參數判斷顯示哪個Fragment。

    如何處理運行時配置發生變化

    我們簡單改一下代碼,只有在savedInstanceState==null時,才進行創建Fragment實例:

    package com.zhy.zhy_fragments; import android.app.Activity; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.util.Log; import android.view.Window; public class MainActivity extends Activity { private static final String TAG = "FragmentOne"; private FragmentOne mFOne; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); Log.e(TAG, savedInstanceState+""); if(savedInstanceState == null) { mFOne = new FragmentOne(); FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); tx.add(R.id.id_content, mFOne, "ONE"); tx.commit(); } } }

    現在無論進行多次旋轉都只會有一個Fragment實例在Activity中。
    現在還存在一個問題,就是重新繪制時,Fragment發生重建,原本的數據如何保持?
    其實和Activity類似,Fragment也有onSaveInstanceState的方法,在此方法中進行保存數據,然后在onCreate或者onCreateView或者onActivityCreated進行恢復都可以。

    詳情請見:

    Android 屏幕旋轉 處理 AsyncTask 和 ProgressDialog 的最佳方案 - Hongyang - 博客頻道 - CSDN.NET

    Fragmeny與ActionBar和MenuItem集成

    Fragment可以添加自己的MenuItem到Activity的ActionBar或者可選菜單中。

    a、在Fragment的onCreate中調用 setHasOptionsMenu(true);
    b、然后在Fragment子類中實現onCreateOptionsMenu
    c、如果希望在Fragment中處理MenuItem的點擊,也可以實現 onOptionsItemSelected;當然了Activity也可以直接處理該MenuItem的點擊事件。

    Fragment

    package com.zhy.zhy_fragments; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.Toast; public class FragmentOne extends Fragment { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setHasOptionsMenu(true); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_one, container, false); return view; } @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { inflater.inflate(R.menu.fragment_menu, menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.id_menu_fra_test: Toast.makeText(getActivity(), "FragmentMenuItem1", Toast.LENGTH_SHORT).show(); break; } return true; } }

    Activity

    package com.zhy.zhy_fragments; import android.app.Activity; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.Window; import android.widget.Toast; public class MainActivity extends Activity { private static final String TAG = "FragmentOne"; private FragmentOne mFOne; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); Log.e(TAG, savedInstanceState + ""); if (savedInstanceState == null) { mFOne = new FragmentOne(); FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); tx.add(R.id.id_content, mFOne, "ONE"); tx.commit(); } } @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_settings: Toast.makeText(this, "setting", Toast.LENGTH_SHORT).show(); return true; default: //如果希望Fragment自己處理MenuItem點擊事件,一定不要忘了調用super.xxx return super.onOptionsItemSelected(item); } } }

    注意:如果希望Fragment自己處理MenuItem點擊事件,一定不要忘了調用super.xxx

    效果圖:

    沒有布局的Fragment的作用

    沒有布局文件Fragment實際上是為了保存,當Activity重啟時,保存大量數據準備的
    請參考博客:
    Android 屏幕旋轉 處理 AsyncTask 和 ProgressDialog 的最佳方案 - Hongyang - 博客頻道 - CSDN.NET

    7、使用Fragment創建對話框
    這是Google推薦的方式,請參考
    Android 官方推薦 : DialogFragment 創建對話框 - Hongyang - 博客頻道 - CSDN.NET

    更多關于Fragment,比如在項目中的最佳實踐,請參考

    Android Fragment 你應該知道的一切 - Hongyang - 博客頻道 - CSDN.NET

    完成,參考鏈接:

    Android Fragment 真正的完全解析(下) - Hongyang - 博客頻道 - CSDN.NET

    總結

    以上是生活随笔為你收集整理的Android之Fragment(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    亚洲最大的av网站 | 天天艹| 伊人色综合久久天天 | 超碰免费观看 | 最新av在线网站 | 91久久爱热色涩涩 | 91手机在线看片 | 九月婷婷综合网 | 国产精品视频免费观看 | 亚洲 精品在线视频 | 国产日韩欧美在线免费观看 | 久久久鲁| 亚洲精品在线免费看 | 樱空桃av| 亚洲黄色一级视频 | 亚洲视频99| 高清视频一区二区三区 | 亚洲欧洲中文日韩久久av乱码 | 国产亚洲精品成人av久久影院 | 精品视频免费久久久看 | 亚洲婷久久 | 在线 视频 亚洲 | 免费毛片一区二区三区久久久 | 黄色精品在线看 | 成人一级免费视频 | av成人在线观看 | 日韩国产精品久久久久久亚洲 | 2017狠狠干 | 91香蕉视频 | 日日夜夜狠狠操 | 免费高清看电视网站 | 成片人卡1卡2卡3手机免费看 | 欧美 日韩 国产 中文字幕 | 亚洲精品午夜久久久 | 日韩成人高清在线 | 成人精品在线 | 免费一级片在线观看 | 五月婷婷激情六月 | 国产在线精品一区二区三区 | 久久久免费毛片 | 日本激情视频中文字幕 | 国内精品在线一区 | 欧洲精品亚洲精品 | 天天综合网 天天 | 69国产精品成人在线播放 | 激情大尺度视频 | 免费观看一级一片 | 91看片麻豆 | 国产视频精品网 | 九九精品久久久 | 国产精品久久久久久久妇 | 97超碰资源站 | 在线免费黄 | 香蕉视频最新网址 | 日韩在线免费电影 | 亚洲黄色在线观看 | 国产精品黄色影片导航在线观看 | 欧美 日韩 性 | 天天干,天天射,天天操,天天摸 | 中文字幕第 | 国产手机在线 | 日本中文字幕在线 | 天天操天天谢 | 91九色自拍 | 天天射综合网视频 | 久久天天操 | www.99久久.com| 97在线观视频免费观看 | 91爱爱视频 | 国产日韩欧美在线一区 | 日韩黄色免费 | 人人爽人人射 | 亚洲精品久久久久久国 | 欧美久久久久久久久久 | 国内久久精品视频 | 欧美日韩精品网站 | 一性一交视频 | 亚洲精品高清一区二区三区四区 | 日韩精品短视频 | 人人澡人人干 | 韩国av免费 | 中文字幕在线播放日韩 | 五月综合网站 | 国产精品va视频 | 国产一区二区三区在线免费观看 | 日韩视频欧美视频 | 黄色a在线 | 99色在线观看视频 | 国内久久精品 | 97香蕉久久国产在线观看 | 国产黄色资源 | 欧美日韩国产区 | 91自拍视频在线 | 91看片看淫黄大片 | 亚洲精品视频在线观看免费 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 一区二区视频免费在线观看 | 久久无码av一区二区三区电影网 | 中文国产字幕在线观看 | 香蕉久草 | 国产99久久久欧美黑人 | 国产99久久精品一区二区300 | 久久成人免费 | 夜色成人网 | 91精品国产综合久久婷婷香蕉 | 97国产情侣爱久久免费观看 | 亚洲国产福利视频 | 国产成人av电影在线 | 国产麻豆果冻传媒在线观看 | 国内精品福利视频 | 最近中文字幕免费观看 | 88av色| 综合网天天射 | 91激情小视频 | 精品二区久久 | 亚洲一区视频免费观看 | 日韩中文字幕免费在线观看 | 婷婷成人在线 | 免费黄色一区 | 亚洲 成人 一区 | 欧美日韩久久一区 | 成人午夜免费福利 | 亚洲精品9 | 天天操天天干天天爽 | av中文字幕在线免费观看 | www免费网站在线观看 | 亚洲国产免费 | 色姑娘综合天天 | 免费高清在线观看成人 | 国产91探花 | 91成人看片| 麻豆国产在线视频 | 久久久久女教师免费一区 | 91精品久久久久久久99蜜桃 | 国产一区二区在线免费播放 | 乱男乱女www7788 | 久产久精国产品 | 三级黄色在线观看 | 欧女人精69xxxxxx | 91在线看黄 | 麻豆视频国产在线观看 | 99精品国产免费久久 | 欧洲亚洲国产视频 | 久久久色 | 欧美日韩在线电影 | 91人人澡人人爽 | 五月天色婷婷丁香 | av大全在线免费观看 | 青草视频在线 | www.天天色.com | 国产精品视频区 | 精品福利国产 | 日韩电影黄色 | 黄色国产高清 | 色综合久久久久久久 | 精品在线一区二区 | 五月香视频在线观看 | 精品九九九 | 国产精品va最新国产精品视频 | 九九免费观看全部免费视频 | 丁香婷婷综合激情五月色 | 91伊人久久大香线蕉蜜芽人口 | 五月综合在线观看 | 精品国产乱码久久久久久1区二区 | 日韩免费在线 | 丰满少妇在线观看 | 成年人免费看av | 色com| 色偷偷人人澡久久超碰69 | 日韩av网址在线 | 日韩在线观看中文字幕 | 成人黄色小说在线观看 | 射射射综合网 | 亚洲a色 | 日本午夜在线亚洲.国产 | 久久精品香蕉 | 亚洲国产欧美一区二区三区丁香婷 | 精品一区二区在线观看 | 国产在线观看91 | h动漫中文字幕 | 99久久精品久久久久久动态片 | 国产精品一区二区在线看 | 国产黄在线免费观看 | 99精品久久只有精品 | 91久久偷偷做嫩草影院 | 国产亚洲91 | 狠狠综合久久 | www.国产在线| 日韩中文字幕免费视频 | 96国产精品 | 亚洲日本黄色 | 人人藻人人澡人人爽 | 国产精品一区二区三区四 | 国产精品国产三级国产aⅴ入口 | 日韩影视大全 | 黄色软件在线观看 | 亚洲国产成人精品久久 | 三级动态视频在线观看 | 夜夜夜草 | 人人干狠狠干 | 日韩在线观看视频一区二区三区 | 激情电影影院 | 操夜夜操 | 国产一级电影在线 | 国内精品在线一区 | 免费a级黄色毛片 | 欧美激情第28页 | 91在线视频精品 | 久久99热久久99精品 | 欧美激情视频久久 | 久久超 | 在线精品视频在线观看高清 | 91精品国自产在线观看 | 激情黄色一级片 | 97在线超碰| 92国产精品久久久久首页 | 国产一区二区手机在线观看 | 粉嫩av一区二区三区四区在线观看 | 天堂在线一区 | 五月激情电影 | 日本久久精品 | 国内精品美女在线观看 | 日本精品免费看 | 欧美黑吊大战白妞欧美 | 亚洲成aⅴ人片久久青草影院 | 国产乱对白刺激视频在线观看女王 | 久久成人国产精品免费软件 | 中文综合在线 | 中文字幕色在线视频 | 九九久久电影 | 一区二区三高清 | 久久国产香蕉视频 | 欧美 国产 视频 | 国产精品一区二区av影院萌芽 | 日韩伦理片一区二区三区 | 天天操天天干天天干 | 日本激情动作片免费看 | 狠狠色丁香久久婷婷综合五月 | 久久精品免费看 | 日韩成人免费电影 | 天天射天天| 日本午夜在线观看 | 国产区精品区 | 国内久久精品 | 日韩91在线 | 超碰97av在线 | 六月婷色 | 国产中文在线字幕 | 欧美乱码精品一区 | 五月天天色| 国产成人在线综合 | 国产三级在线播放 | 日日插日日干 | 国产精品爽爽久久久久久蜜臀 | 一区二区视频在线观看免费 | 99精品视频在线观看免费 | 欧美日韩一区久久 | 久久精品理论 | 国产精品亚洲视频 | 91在线视频观看 | 免费影视大全推荐 | 亚洲黄色av网址 | 免费在线 | 免费看片黄色 | 99视频这里只有 | 91视频成人免费 | 国产日韩欧美视频在线观看 | 亚洲人在线视频 | 色播五月激情综合网 | 久久不卡日韩美女 | 日韩免费高清在线 | 日韩电影在线观看中文字幕 | 国产综合视频在线观看 | 日韩成人中文字幕 | 精品在线一区二区三区 | 日韩乱色精品一区二区 | 亚洲欧美国产精品久久久久 | 天天做日日爱夜夜爽 | 国产99久久九九精品免费 | 伊人成人久久 | 国产成人一区在线 | 青青草在久久免费久久免费 | 天天爽夜夜操 | 久热av在线 | 久久综合导航 | 不卡国产视频 | 91桃花视频 | 亚洲伊人色 | 成人黄色电影在线观看 | 在线观看av的网站 | 欧美精品国产综合久久 | 玖操| 超碰在线9 | 欧美日韩国产三级 | 免费黄色网址大全 | 一区中文字幕电影 | 免费观看91视频大全 | 天天射天天做 | 伊人手机在线 | 欧美怡红院视频 | 日韩91精品 | 久久国产精品一区二区三区四区 | 日韩在线一区二区免费 | 欧美福利片在线观看 | 亚洲精品国产第一综合99久久 | 久久情网 | 欧美日韩国产综合一区二区 | 欧美日韩另类在线观看 | 在线你懂的视频 | 婷婷丁香在线观看 | 免费视频久久久 | 97在线观看免费视频 | 婷婷国产v亚洲v欧美久久 | 久久久免费看视频 | 国产成人亚洲在线观看 | 亚洲精品乱码久久久久久蜜桃不爽 | 懂色av一区二区三区蜜臀 | 欧美日韩国产精品久久 | 午夜精品久久久99热福利 | 激情一区二区三区欧美 | 精品黄色视 | 国产黄色精品视频 | 久久精品欧美 | 久久亚洲婷婷 | 欧美精品资源 | 日韩a在线看 | 欧美日韩国产综合一区二区 | 国产亚洲午夜高清国产拍精品 | 一级黄色电影网站 | 99精品在线直播 | 国产伦理久久 | 日本特黄一级片 | 2017狠狠干| 尤物一区二区三区 | 国产黄色大全 | 开心色激情网 | 久久精品在线免费观看 | 中文在线免费视频 | 日韩欧美在线不卡 | 午夜18视频在线观看 | 日韩视频一区二区 | 亚洲人成综合 | 久久资源在线 | 久久综合九色综合久久久精品综合 | 日韩欧美视频在线免费观看 | 五月婷婷六月丁香激情 | 国产精品美女免费 | 久久久www成人免费毛片 | 在线观看91久久久久久 | 色av资源网 | 国产在线看 | 一区二区三区电影大全 | 日韩欧美高清一区二区三区 | 国产亚洲婷婷免费 | 亚洲精品美女免费 | 国产免费一区二区三区网站免费 | 99热精品免费观看 | 四虎精品成人免费网站 | 国产白浆视频 | 亚洲精品美女在线观看播放 | 激情视频国产 | 操操操日日 | 欧美最猛性xxxxx(亚洲精品) | 草莓视频在线观看免费观看 | 探花视频在线版播放免费观看 | 亚洲资源网| 黄色大全视频 | av黄网站| 免费男女羞羞的视频网站中文字幕 | 五月天综合婷婷 | 免费高清国产 | 国产精品99蜜臀久久不卡二区 | 精品久操| 国产一区在线视频观看 | 欧美黄污视频 | 久久久久久久久久久久久久免费看 | 91精品国产欧美一区二区成人 | 婷婷在线免费视频 | 国产又粗又猛又黄又爽的视频 | 亚洲精品欧美精品 | 美女免费网视频 | 最新日韩视频在线观看 | 国产精品99久久免费观看 | 日韩精品免费一区二区在线观看 | 天天爽人人爽夜夜爽 | 夜夜夜夜夜夜操 | 四虎在线免费观看 | 精油按摩av | 日本少妇视频 | 97色噜噜| 国产精品都在这里 | 91麻豆精品国产 | 亚洲精品久久久久中文字幕二区 | 亚洲性少妇性猛交wwww乱大交 | 亚洲精品国产第一综合99久久 | 国产精品区免费视频 | 激情图片久久 | 超碰日韩 | 国产精美视频 | 亚洲色图色 | 国产成人精品av在线观 | av中文在线 | 国产在线观看h | 欧美另类调教 | 国产精品99久久99久久久二8 | 四川妇女搡bbbb搡bbbb搡 | 在线观看黄色小视频 | 色综合色综合久久综合频道88 | av中文字幕网站 | 日韩a级黄色片 | 久久国产福利 | 91免费在线看片 | 在线免费黄 | 免费国产在线精品 | 天天草天天色 | 婷婷综合国产 | 亚洲精品国产免费 | 天天综合网在线观看 | 精品视频在线视频 | 久久国产视屏 | 伊人开心激情 | 夜夜狠狠| 波多野结衣视频一区 | 97超碰人人澡人人爱学生 | 黄色视屏av | 欧美成亚洲| 天天综合91| 国产一级片一区二区三区 | 不卡的av电影在线观看 | 日韩精品一区二区三区免费观看视频 | 久久视屏网 | 四虎永久国产精品 | 在线视频日韩 | 精品国产免费一区二区三区五区 | 99久久精品国产一区二区三区 | 免费观看一级成人毛片 | 91精品免费在线观看 | 黄网站app在线观看免费视频 | 久久国产网站 | 日日爱影视 | 久久久久福利视频 | 国产精品系列在线观看 | 91视频久久久 | 久久婷婷一区二区三区 | 国产日本在线观看 | 国产精品影音先锋 | 一区二区精品在线 | 色多视频在线观看 | 99精品视频播放 | 久久电影色 | 香蕉影视app | 亚洲高清久久久 | 成人免费一级 | 欧美 日韩 国产 中文字幕 | 欧美性成人 | 欧美激情综合色综合啪啪五月 | 中文字幕视频观看 | 久久tv视频 | 精品日本视频 | 色综合天天综合网国产成人网 | 久草在线视频免费资源观看 | 色妞久久福利网 | 日韩精品一区二区三区丰满 | 国产一级特黄毛片在线毛片 | 西西www4444大胆视频 | av在线看片 | 婷婷草| 午夜精品一区二区三区免费 | 成人精品视频久久久久 | 成人午夜在线电影 | 最近中文字幕国语免费av | 亚洲精品美女久久 | 伊人伊成久久人综合网站 | 欧美日韩不卡一区二区 | 久久天堂精品视频 | 97超碰资源网 | 天堂网中文在线 | 五月开心六月伊人色婷婷 | 欧美一区二区在线免费看 | 久久久91精品国产一区二区三区 | 波多野结衣日韩 | 精品国产福利在线 | 亚洲最新av| 免费涩涩网站 | 天天操综合网站 | 久久看毛片 | 婷婷视频导航 | 欧美日韩在线视频一区二区 | 一级全黄毛片 | 最近中文字幕完整视频高清1 | 91成人黄色 | 成年人免费观看在线视频 | 激情综合亚洲精品 | 亚洲精品456在线播放第一页 | 九九交易行官网 | 国产精品原创 | 99国产精品久久久久老师 | 国内精品毛片 | 精品国产一区二区三区久久久久久 | 久久精品视频在线看 | 最新日韩视频 | 国产一级不卡毛片 | 日韩欧美不卡 | 四虎4hu永久免费 | 草久视频在线观看 | 欧美在线视频第一页 | 激情五月在线视频 | 亚州性色 | 天天综合色网 | 91av蜜桃| 国产成人亚洲精品自产在线 | 婷婷视频在线播放 | 国产99一区视频免费 | 午夜.dj高清免费观看视频 | 免费电影一区二区三区 | 精品美女在线视频 | 天天草天天爽 | 成人国产网站 | 中文字幕人成乱码在线观看 | 亚洲黄网站 | av在线com| 天天曰天天爽 | 亚洲在线日韩 | 午夜精品久久久久久 | 久久精品国产精品亚洲精品 | 欧美日韩在线视频一区二区 | 亚洲特级毛片 | 中文字幕一区二区三区视频 | 日韩av网址在线 | 日韩色在线观看 | 欧美日韩免费观看一区=区三区 | 99视频免费播放 | 国产专区在线播放 | 麻豆视频免费在线观看 | 亚洲国产电影在线观看 | 99精品欧美一区二区三区 | 久久久久亚洲国产 | 91视频在线免费看 | 国产999在线观看 | 日韩成人av在线 | 51久久成人国产精品麻豆 | 国产一级片一区二区三区 | 免费在线观看av网址 | 欧美在线视频免费 | 免费看国产精品 | 69国产盗摄一区二区三区五区 | 91视视频在线直接观看在线看网页在线看 | 免费观看的av网站 | 久久伊人免费视频 | 免费三级网 | 久久久久久国产一区二区三区 | 精品一区二区免费 | 婷婷亚洲五月色综合 | 一区二区视频在线播放 | 国产中文视频 | 精品伦理一区二区三区 | 人成免费网站 | 一区二区三区韩国免费中文网站 | 欧美-第1页-屁屁影院 | 亚洲精品男人天堂 | 91免费网站在线观看 | 夜夜夜影院 | 99久久精品无免国产免费 | 国产精品午夜8888 | 天天伊人狠狠 | 免费精品在线观看 | 美女视频黄免费网站 | 日本精品视频在线播放 | aa一级片 | 九九久久久久久久久激情 | 免费人成网ww44kk44 | 精品视频123区在线观看 | 免费性网站 | 国产亚洲无 | 久久国产露脸精品国产 | 国际精品久久久 | 一区二区精品视频 | 97成人在线观看 | 少妇精品久久久一区二区免费 | 成人小视频在线观看免费 | 日日草av| 国产一区二区三区午夜 | 香蕉视频在线视频 | 久久麻豆视频 | 亚洲欧美日韩在线看 | 四虎国产视频 | 狠狠成人 | 精品视频在线看 | 欧美精品乱码久久久久久按摩 | 亚洲精品免费在线观看 | 国产一级免费观看视频 | 午夜av在线 | 国产精品免费久久 | 日本爽妇网 | 日韩色在线| 成年人视频免费在线播放 | 深夜免费小视频 | 国产精品男女啪啪 | 久草视频免费看 | 久久精品美女视频 | 久久黄色免费观看 | 久久精品日本啪啪涩涩 | 免费在线激情电影 | 97视频人人 | 高清av免费一区中文字幕 | 亚洲精品综合在线观看 | 日韩艹 | 夜夜躁日日躁狠狠躁 | 丝袜美腿在线播放 | 日日夜夜天天操 | 黄色小网站在线观看 | 亚洲 中文 欧美 日韩vr 在线 | 久久精品精品电影网 | 18网站在线观看 | 丁香激情五月 | av网站地址| 久久黄色美女 | 一区二区三区高清 | 69国产精品成人在线播放 | 69久久99精品久久久久婷婷 | 日韩在线视频网址 | 久久免费的精品国产v∧ | 99精品一区二区 | 国产3p视频 | 久久精品高清视频 | 国产高清专区 | 欧美成人h版在线观看 | 婷婷干五月 | 丁香六月国产 | 亚洲国产wwwccc36天堂 | 成人午夜在线观看 | 涩涩网站在线观看 | 免费视频a | 欧美精品乱码久久久久久 | 91av综合| 国产成年人av | 99免费精品 | 在线国产能看的 | 五月综合| 777奇米四色 | 免费看短| 高清中文字幕 | 在线中文字幕网站 | 国产中文欧美日韩在线 | 久久黄色免费视频 | 日韩在线不卡视频 | 国产精品国产三级国产不产一地 | 不卡av在线播放 | 久久精品一区二 | 日韩精品久久一区二区三区 | 丁香婷婷激情啪啪 | 日本aa在线 | 视频二区| 91av在线国产 | 91亚洲网| 日韩剧| 亚洲精品国偷拍自产在线观看蜜桃 | 九九热在线视频免费观看 | 日韩欧美视频免费看 | 国产一区网址 | 黄色免费视频在线观看 | 日日草av | 久久久久国产精品一区 | 97超碰人人模人人人爽人人爱 | 在线久久| 免费观看一级成人毛片 | 成人aⅴ视频 | 999国产| 天天综合天天做天天综合 | 激情影院在线观看 | 色噜噜色噜噜 | 欧美视频国产视频 | 精品视频97| 草久在线 | 久久99久久精品国产 | 91伊人影院| 偷拍精偷拍精品欧洲亚洲网站 | 91成人蝌蚪| 国内精品免费久久影院 | 四虎最新域名 | 中文字幕在线播放日韩 | 午夜精品麻豆 | 国产va在线观看免费 | 日本中文字幕观看 | 精品中文字幕在线 | 亚洲精品久久久久58 | 久久久久免费精品 | 国产不卡在线观看 | 97天堂 | 九九热国产视频 | 精品一区中文字幕 | 久青草视频在线观看 | 91桃色免费视频 | 懂色av一区二区三区蜜臀 | 麻豆传媒精品 | 成年人电影毛片 | 成人av视屏 | 黄色a大片 | 欧美a免费 | 日韩一区二区三区免费视频 | 五月婷婷丁香激情 | 久久香蕉国产精品麻豆粉嫩av | 五月香视频在线观看 | 欧美一二区在线 | a级一a一级在线观看 | 国产成人综合在线观看 | 深夜免费福利网站 | 欧美在线视频二区 | 久色伊人 | 日韩精品一区二区三区免费视频观看 | 一级黄网 | 91在线视频精品 | 色综合久久99 | 天天插视频 | 色多视频在线观看 | 国产黄色视 | 国产精品二区在线观看 | 色黄久久久久久 | 亚洲丝袜一区 | 欧美亚洲另类在线视频 | 欧美日韩啪啪 | 国产午夜精品久久 | 精品在线不卡 | 国产999精品久久久久久麻豆 | 国产免费视频在线 | 高清有码中文字幕 | 精品国产乱码久久久久久三级人 | av专区在线| 91成年人网站 | 国产亚洲一区二区三区 | 国产精品九九久久久久久久 | 亚洲电影成人 | 欧美福利片在线观看 | 精品一区在线 | 免费亚洲黄色 | 在线黄频 | 欧美极品久久 | 久久久久久毛片精品免费不卡 | 国产激情小视频在线观看 | 日日日干 | 天天操操 | 亚洲国产视频在线 | 久草www | 天天操天天综合网 | 99久久久国产精品 | 久久视频 | 国产精品免费久久久久影院仙踪林 | 91成人免费在线 | 国产一区在线免费 | 色中射| 黄色片免费在线 | 亚洲无人区小视频 | 91视频麻豆 | 成片免费观看视频999 | 日韩精品一区二区三区电影 | 国产对白av | 成 人 黄 色 视频播放1 | 超碰免费公开 | 国产流白浆高潮在线观看 | 久久综合久久综合这里只有精品 | 国产精品区在线观看 | 久久国产一区 | 狠狠干狠狠久久 | 97超碰人人爱 | 国产精品久久久久久久av电影 | 九九精品视频在线观看 | 99热在线国产 | 国产精品毛片一区二区 | 色婷婷综合久久久久中文字幕1 | 首页av在线 | 国产精品久久久久久久免费 | 免费在线视频一区二区 | 免费福利视频导航 | 久久婷亚洲五月一区天天躁 | 亚洲精欧美一区二区精品 | 国产小视频在线播放 | 在线亚洲免费视频 | 玖操 | 国产精品九九久久久久久久 | 久久久久久免费毛片精品 | 欧美福利网址 | 久久99热这里只有精品国产 | 日本精品视频在线 | 美女国产精品 | 日日爱网站 | 国产一区二区中文字幕 | 国产视频观看 | 精品你懂的 | 欧美三人交 | 欧洲亚洲激情 | 久久手机看片 | 青春草视频在线播放 | 国产精品123 | 久久国产亚洲精品 | 成人免费观看完整版电影 | 久久综合之合合综合久久 | av爱干| 久久视影 | 国产精品一区免费观看 | 久久综合久久综合久久综合 | 国产精品婷婷午夜在线观看 | 天天综合网在线观看 | 国产精品欧美日韩 | 999久久久久久久久 69av视频在线观看 | 国产高清精品在线观看 | 国产精品久久久久永久免费观看 | 久久免费资源 | 久久艹中文字幕 | 久久久久久久久网站 | 九九久久在线看 | 日韩国产高清在线 | 亚洲视屏 | 久久精品视频在线观看免费 | 丁香资源影视免费观看 | 精品一二区 | 国产资源网站 | 97电影网手机版 | 视频一区在线免费观看 | 男女拍拍免费视频 | 成年人在线观看网站 | va视频在线观看 | 国产精品理论片在线观看 | 日韩中文字幕一区 | 国产剧情在线一区 | 国产视频综合在线 | 亚洲草视频 | 国内视频在线 | 久久视频在线观看 | 综合久久影院 | 日韩高清精品免费观看 | 国产一区在线精品 | 国产一级a毛片视频爆浆 | 国产在线观看高清视频 | 亚洲欧美偷拍另类 | 色噜噜噜 | 日韩videos | 美女网站视频一区 | 国产69精品久久app免费版 | 少妇按摩av | 欧美色图88 | 久久天天躁夜夜躁狠狠躁2022 | 成人片在线播放 | 毛片网站在线 | 狠狠干激情 | 国产高清视频色在线www | 99热手机在线 | 伊人天天色 | 日韩www在线 | 色噜噜在线观看 | 超碰在97| 日韩在线国产精品 | 中文字幕久久亚洲 | 少妇性bbb搡bbb爽爽爽欧美 | 久久这里只有精品视频首页 | 国产精品网红福利 | 久久精品国产免费看久久精品 | 一区二区三区日韩视频在线观看 | 成人av免费在线观看 | 日本爽妇网 | 二区三区毛片 | 中文字幕网址 | 国产精品99久久久久久武松影视 | 亚洲色图美腿丝袜 | 久操伊人 | 丁香花在线视频观看免费 | 日韩精品一区二区三区丰满 | 99色人| 久草免费手机视频 | 欧美日韩中文另类 | 中文字幕文字幕一区二区 | 亚洲另类交 | 999毛片 | 亚洲三级在线 | 久久国产成人午夜av影院宅 | 亚洲综合欧美激情 | 国产精品久久久久久久免费观看 | 久久精久久精 | 一本一道波多野毛片中文在线 | 九九热免费精品视频 | 中文字幕在线观看完整 | 亚洲第二色| 在线观看黄色国产 | 亚洲国产精品久久久久婷婷884 | 香蕉影视| 久久精品99视频 | av网址最新 | 国产一区二区播放 | 久久国产精品免费一区 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 久久免费视频在线观看6 | 免费黄在线看 | 国产亚洲精品久久久久久久久久久久 | 福利视频网站 | 一级做a视频 | 97成人精品视频在线播放 | 日韩精品久久久久久久电影竹菊 | 久久av免费电影 | 国产精品一区二区免费在线观看 | 天天射色综合 | 国产大片黄色 | 97精品视频在线播放 | 日本二区三区在线 | 91av精品| 九九三级毛片 | 成人精品一区二区三区中文字幕 | 精品久久久久久久久久久院品网 | 麻豆超碰 | 日韩午夜一级片 | 免费黄a大片| bbb搡bbb爽爽爽 | 日本天天操 | 成人黄色电影免费观看 | 在线黄色观看 | 色九九视频 | 成人全视频免费观看在线看 | 日韩成人精品一区二区 | 国产综合在线观看视频 | 在线国产高清 | 精品国产99国产精品 | 久久视频网址 | 日韩高清观看 | 国产精品久久久久永久免费看 | 国产精品专区在线观看 | 五月开心六月伊人色婷婷 | 久久夜色网 | 在线看污网站 | 久久精品国产精品亚洲精品 | 欧美韩日在线 | 99在线热播精品免费99热 | 国产精品久久久久一区二区三区共 | 久久久在线免费观看 | 狠狠色丁香久久婷婷综合丁香 | 久久理伦片 | 久久草精品 | 精品国产亚洲日本 | 麻豆视频免费入口 | 国产精品久久久免费 | 中文字幕亚洲不卡 | 久久精品美女视频 | 成人午夜电影在线观看 | 国产高清视频免费最新在线 | 97爱爱爱 | 欧美另类网站 | 亚洲自拍自偷 | 91免费观看国产 | 日韩欧美不卡 | 992tv在线成人免费观看 | 免费成人短视频 | av中文国产 | 亚洲少妇久久 | av亚洲产国偷v产偷v自拍小说 | 国产成人精品一区一区一区 | 亚洲国产视频网站 | 日韩最新在线视频 | 国产视频一区二区三区在线 | 亚洲国产日韩一区 | 国产黄色大片免费看 | 亚洲免费在线看 | 精品自拍网 | 丁香六月中文字幕 | 综合久久网站 | 久草在线观看资源 | 久久精品亚洲精品国产欧美 | 一区二区三区在线电影 | 五月婷在线观看 | 久久久久久久久久久福利 | 欧美日韩精品区 | 亚洲国产精品电影 | 国产成人一区二区在线观看 | 久久久久久久av | 毛片在线网 | 久久免费视频5 | 973理论片235影院9 | 麻豆av一区二区三区在线观看 | av线上看| 丁香婷婷基地 | 国产中文在线播放 | 国产不卡网站 | 久久a v电影 | 国产精品专区一 | 超碰日韩在线 | 天天射天天干天天 | 国产精品九九九九九九 | 日韩区欠美精品av视频 | 激情av资源网 | 又黄又爽又色无遮挡免费 | 国产精品色视频 | 亚洲精品网页 | 国产老妇av| 国产小视频在线观看免费 | 伊人中文在线 | 亚洲精品国产综合99久久夜夜嗨 | 国产亚洲精品久久 | 精品毛片久久久久久 | 91精品一区二区三区久久久久久 | 99精品久久只有精品 | 亚洲成人黄色av | 99久久婷婷|