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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

优雅的监听软键盘隐藏

發布時間:2023/12/14 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 优雅的监听软键盘隐藏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

背景

  • Android軟鍵盤的顯示和隱藏,從開始做直播這塊,就一直困擾著我。
  • 從布局擠壓,到輸入區顯示不全,再到閃屏以及卡頓,這里的坑讓我跌倒無數次。
  • 各種布局監聽,回調,代碼冗余、復雜、與業務強耦合無法復用,還是沒有很好的解決鍵盤的彈出和隱藏
  • 為了給用戶更好的操作體驗,決定找到一種最優解決方案。
  • 科普基礎知識-WindowSoftInputMode

    Activity 的主窗口與包含屏幕軟鍵盤的窗口的交互方式。改屬性的設置影響兩個方面:

    • 當Activity成為用戶注意的焦點時軟鍵盤的狀態-隱藏還是可見
    • 對Activity主窗口所做的調整-是否將其尺寸調小以為軟鍵盤騰出空間,或者當窗口部分被軟鍵盤遮擋時是否平移其那內容使當前焦點可見。

    該設置必須是下標所列的值之一,或者一個state...值加上一個adjust...值的組合。在任一一組設置多個值(例如,多個state...值)都會產生未定義結果。各個值之間使用垂直條(|)分割。

    值說明
    stateUnspecified不指定軟鍵盤的狀態(隱藏還是可見)。 將由系統選擇合適的狀態,或依賴主題中的設置。這是對軟鍵盤行為的默認設置。
    stateUnchanged當 Activity 轉至前臺時保留軟鍵盤最后所處的任何狀態,無論是可見還是隱藏。
    stateHidden當用戶選擇 Activity 時 — 也就是說,當用戶確實是向前導航到 Activity,而不是因離開另一 Activity 而返回時 — 隱藏軟鍵盤。
    stateAlwaysHidden當 Activity 的主窗口有輸入焦點時始終隱藏軟鍵盤。
    stateVisible在正常的適宜情況下(當用戶向前導航到 Activity的主窗口時)顯示軟鍵盤。
    stateAlwaysVisible當用戶選擇 Activity 時 — 也就是說,當用戶確實是向前導航到 Activity,而不是因離開另一 Activity 而返回時 — 顯示軟鍵盤。
    adjustUnspecified不指定 Activity 的主窗口是否調整尺寸以為軟鍵盤騰出空間,或者窗口內容是否進行平移以在屏幕上顯露當前焦點。 系統會根據窗口的內容是否存在任何可滾動其內容的布局視圖來自動選擇其中一種模式。 如果存在這樣的視圖,窗口將進行尺寸調整,前提是可通過滾動在較小區域內看到窗口的所有內容。這是對主窗口行為的默認設置。
    adjustResize始終調整 Activity 主窗口的尺寸來為屏幕上的軟鍵盤騰出空間
    adjustPan不調整 Activity 主窗口的尺寸來為軟鍵盤騰出空間, 而是自動平移窗口的內容,使當前焦點永遠不被鍵盤遮蓋,讓用戶始終都能看到其輸入的內容。 這通常不如尺寸調正可取,因為用戶可能需要關閉軟鍵盤以到達被遮蓋的窗口部分或與這些部分進行交互。

    官方解釋

    網上解決方案

    第一種方案

    由于Activity.onKeyDownn()是監聽不到向下的按鍵,所以自定義Edittext,重寫onKeyPreIme方法

    /*** 攔截鍵盤向下按鍵的 EditTextView*/ public class TextEditTextView extends DmtEditText {public TextEditTextView(Context context) {super(context);}public TextEditTextView(Context context, AttributeSet attrs) {super(context, attrs);}public TextEditTextView(Context context, AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);}@Overridepublic boolean onKeyPreIme(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == 1 && onKeyBoardHideListener != null) {onKeyBoardHideListener.onKeyHide();}return super.onKeyPreIme(keyCode, event);}/*** 鍵盤監聽接口*/private OnKeyBoardHideListener onKeyBoardHideListener;public void setOnKeyBoardHideListener(OnKeyBoardHideListener onKeyBoardHideListener) {this.onKeyBoardHideListener = onKeyBoardHideListener;}public interface OnKeyBoardHideListener {void onKeyHide();} }

    為什么重寫onKeyDown()方法,監聽不到虛擬鍵的向下按鍵,而重寫EditTextView的onKeyPreIme可以監聽到,這篇博客寫的很明白。

    第二種方案

    使用ViewTreeObserver.OnGlobalLayoutListener來監聽整個布局的變化,但是有問題,點擊軟鍵盤的“向下”按鍵,不會回調這個函數。

    View.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener(){//當鍵盤彈出隱藏的時候會 調用此方法。@Overridepublic void onGlobalLayout() {final Rect rect = new Rect();activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);final int screenHeight = activity.getWindow().getDecorView().getRootView().getHeight();final int heightDifference = screenHeight - rect.bottom;boolean visible = heightDifference > screenHeight / 3;if(visible){Log.i(TAG,"軟鍵盤顯示");}else {Log.i(TAG,"軟鍵盤隱藏");}} });

    第三種方案

    將布局撐滿全屏,來監聽onMeasure()的變化,這種方式可以生效,但是和業務耦合性太大,而且在全面屏的時候處理比較麻煩,就不貼代碼了

    總結

    基本上所有監聽軟鍵盤的方式,都是通過上面的三種方式實現的。實現效果比較好是Android鍵盤面板沖突 布局閃動處理方案

    所有的方式都是在本頁面上去彈起軟鍵盤,軟鍵盤是dialog,而且頁面的邏輯和復雜程度有各種情況,非常難以考慮。真是讓人抓耳撓腮呀。

    打個響指,換種思路

    沒有非要在一個頁面內完成軟鍵盤的調度,我們可以另起爐灶,去實現這個功能。

    使用DialogFragment來實現軟鍵盤功能

    這種情況還是與業務有一定的關聯,我不敢說這種方案能夠解決所有情況下的軟鍵盤使用問題,但是能解決很多情況下的使用。

    先說一下我的使用場景,因為我是負責直播模塊的開發,軟鍵盤的彈出和隱藏時的輸入部分ui是不相同。使用抖音的直播舉個例子

    可以看到軟鍵盤在打開和關閉的時候是不同的ui,那么就可以使用DialogFragment來實現功能。我們最主要實現就是監聽軟鍵盤的彈出和隱藏,彈出問題不大,這里最深的坑就是監聽鍵盤的消失,先總結一下鍵盤消失的場景:

  • 點擊空白區域消失
  • 點擊虛擬鍵能向下按鍵隱藏鍵盤
  • 點擊軟鍵盤向下按鈕隱藏鍵盤
  • 點擊發送按鈕后,消失鍵盤
  • ps: 2和3,看上去好像是一樣的啊,大家肯定有一些疑惑,看圖說話

    從張圖中可以清晰的看出來兩者的區別,其實android的原生鍵盤是沒有向下的按鈕的,各個第三方的輸入法自己實現的,andorid中沒有回調可以監聽到這個事件(坑爹啊)。而且
    ViewTreeObserver 監聽不到點擊這個按鈕時的布局變化(坑爹啊!!!),我只是在mix2手機上測試的,其他的手機類型我不敢確保也是同樣的問題。

    來來來,在做個小結

    • 軟鍵盤的彈出時可以監聽的
    • 消失幾種情況中,除了軟鍵盤的向下按鍵其他都可以做到監聽,或者可以拿到觸發的時機。

    搜了一大圈,好像沒有找到比較好的解決方案,怎么辦呢?但是別人家的直播都是可以做到的呀,這時看到了View.getWindowVisibleDisplayFrame()方法,來看下官方的解釋

    /*** Retrieve the overall visible display size in which the window this view is* attached to has been positioned in. This takes into account screen* decorations above the window, for both cases where the window itself* is being position inside of them or the window is being placed under* then and covered insets are used for the window to position its content* inside. In effect, this tells you the available area where content can* be placed and remain visible to users.** <p>This function requires an IPC back to the window manager to retrieve* the requested information, so should not be used in performance critical* code like drawing.** @param outRect Filled in with the visible display frame. If the view* is not attached to a window, this is simply the raw display size.*/public void getWindowVisibleDisplayFrame(Rect outRect) {if (mAttachInfo != null) {try {mAttachInfo.mSession.getDisplayFrame(mAttachInfo.mWindow, outRect);} catch (RemoteException e) {return;}// XXX This is really broken, and probably all needs to be done// in the window manager, and we need to know more about whether// we want the area behind or in front of the IME.final Rect insets = mAttachInfo.mVisibleInsets;outRect.left += insets.left;outRect.top += insets.top;outRect.right -= insets.right;outRect.bottom -= insets.bottom;return;}// The view is not attached to a display so we don't have a context.// Make a best guess about the display size.Display d = DisplayManagerGlobal.getInstance().getRealDisplay(Display.DEFAULT_DISPLAY);d.getRectSize(outRect);}

    大概意思:這個api是用來獲取窗口可視區域大小的。該大小會收到系統狀態欄、軟鍵盤和虛擬按鍵的影響。在應用開發中可以利用該api來獲取狀態欄的高度,軟鍵盤的高度和虛擬按鍵的高度。

    解決方案:
    既然沒有回調能夠拿到虛擬鍵盤的向下操作,那么我們就輪詢監聽窗口的大小,由于這個dialogFragment的生命周期只是在輸入的時候存在,那么就以為這這個輪詢時間也不會太長,100ms輪詢一次來監聽窗口變化的大小,完美解決(如果還有其他優雅的解決方案,請告訴我)。

    用DialogFragment實現輸入區域的好處:

  • 輸入部分的邏輯與其他業務本分的邏輯隔離,實現解耦
  • DialogFragment也是一個dialog,可以單獨處理鍵盤彈出時的邏輯
  • 有了以上兩點考慮,我就開始動手寫代碼

    Version 1

    源代碼就不貼了,太長了,而且大部分和業務相關,所有的業務邏輯和功能邏輯全部寫在DialogFragment中,看上去沒什么問題,如果突然有一天,另外的一個地方要做到類似的邏輯,又要重新寫一遍功能邏輯,完全不能復用呀,這樣的實現方案是不行的,打回去重做。嗯,需要將業務邏輯和功能邏輯分割開,這樣可以很大程度上的復用當前代碼。

    Version 2

    首先要定義一個接口,來定義此類功能的統一調用方式,所有要實現此功能的類都要實現這個接口

    public interface IKeyBoard {// EditTextView需要繼承TextEditTextView,TextEditTextView是用來監聽虛擬按鍵向下的操作TextEditTextView getEditTextView();// 根布局View getRoot();// dialogFragment 銷毀時調用,也就是隱藏時void onDismiss(); }

    自定義EditTextView

    /*** 攔截鍵盤向下按鍵的 EditTextView*/ public class TextEditTextView extends DmtEditText {public TextEditTextView(Context context) {super(context);}public TextEditTextView(Context context, AttributeSet attrs) {super(context, attrs);}public TextEditTextView(Context context, AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);}@Overridepublic boolean onKeyPreIme(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == 1 && onKeyBoardHideListener != null) {onKeyBoardHideListener.onKeyHide();}return super.onKeyPreIme(keyCode, event);}/*** 鍵盤監聽接口*/private OnKeyBoardHideListener onKeyBoardHideListener;public void setOnKeyBoardHideListener(OnKeyBoardHideListener onKeyBoardHideListener) {this.onKeyBoardHideListener = onKeyBoardHideListener;}public interface OnKeyBoardHideListener {void onKeyHide();} }

    最主要的類來了:

    /*** 這個類時用來實現輸入框隨軟鍵盤彈出的情況,這個dialogFragment只負責彈起鍵盤的操作,不負責具體的ui顯示和邏輯,* 應該實現一個UI類來實現相應的顯示和邏輯部分。* <p>* 使用方法:* 1. 需要實現{@link IKeyBoard}* 2. UI類需要包含{@link TextEditTextView}* 3. 如果UI需要監聽聲明周期,需要實現{@link LifecycleObserver}* <p>* ps:父類的Fragment或者Activity window的setSoftInputMode設置為{@link WindowManager} SOFT_INPUT_ADJUST_NOTHING** @author liyachao* @date 2018/4/17*/public class KeyBoardDialogFragment extends DialogFragment implements TextEditTextView.OnKeyBoardHideListener,WeakHandler.IHandler {private static final String TAG = "KeyBoardDialogFragment";private IKeyBoard mKeyBoardView;private TextEditTextView mTextEditTextView;private boolean softKeyBoardIsVisible;private Activity mActivity;private WeakHandler mHandler;private Rect mRect = new Rect();public static KeyBoardDialogFragment newInstance(IKeyBoard keyBoard) {KeyBoardDialogFragment fragment = new KeyBoardDialogFragment();Bundle args = new Bundle();fragment.setArguments(args);fragment.setKeyBoardView(keyBoard);return fragment;}/*** 安全檢查* @param keyBoardView 業務邏輯的view*/public void setKeyBoardView(IKeyBoard keyBoardView) {if (keyBoardView == null) {throw new RuntimeException("keyBoardView must not be null");} else if (keyBoardView.getEditTextView() == null) {throw new RuntimeException("keyBoardView must has EditTextView");} else if (keyBoardView.getRoot() == null) {throw new RuntimeException("keyBoardView must has root layout");}mKeyBoardView = keyBoardView;mTextEditTextView = keyBoardView.getEditTextView();}/*** 設置主題 input_dialog_style_large的具體設置如下* <style name="input_dialog_style_large" parent="@android:style/Theme.Dialog">* <item name="android:windowBackground">@color/transparent</item> //winndow 背景為透明色 * <item name="android:windowNoTitle">true</item> // 沒有title* <item name="android:backgroundDimEnabled">false</item> // 沒有默認的背景色* <item name="android:windowAnimationStyle">@style/keyboard_dialog_animation</item> //window動畫,可以不設置* </style>* 業務邏輯view,注冊DialogFragment聲明周期* */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setStyle(STYLE_NO_TITLE, R.style.input_dialog_style_large);if (mKeyBoardView == null || mKeyBoardView.getRoot() == null) {dismiss();return;}if (mKeyBoardView.getRoot() instanceof LifecycleObserver) {getLifecycle().addObserver((LifecycleObserver) mKeyBoardView.getRoot());}mHandler = new WeakHandler(this);}@Overridepublic void onAttach(Context activity) {super.onAttach(activity);mActivity = (Activity) activity;}@Nullable@Overridepublic View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {return mKeyBoardView.getRoot();}@Overridepublic void onActivityCreated(Bundle savedInstanceState) {super.onActivityCreated(savedInstanceState);mTextEditTextView.setOnKeyBoardHideListener(this);initWindowParams();}/*** 設置window屬性*/public void initWindowParams() {Window window = getDialog().getWindow();if (window == null) {return;}WindowManager.LayoutParams lp = getDialog().getWindow().getAttributes();lp.dimAmount = 0;lp.flags |= WindowManager.LayoutParams.FLAG_DIM_BEHIND;lp.height = ViewGroup.LayoutParams.WRAP_CONTENT;lp.width = ViewGroup.LayoutParams.MATCH_PARENT;lp.gravity = Gravity.BOTTOM;window.setBackgroundDrawable(new ColorDrawable(0));window.setAttributes(lp);window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);}@Overridepublic Dialog onCreateDialog(Bundle savedInstanceState) {Dialog dialog = super.onCreateDialog(savedInstanceState);dialog.setCanceledOnTouchOutside(true);return dialog;}@Overridepublic void onResume() {super.onResume();mHandler.sendEmptyMessageDelayed(1, 100);}@Overridepublic void onStop() {super.onStop();dismissAllowingStateLoss();mHandler.removeMessages(1);}@Overridepublic void onDestroy() {super.onDestroy();}@Overridepublic void onDismiss(DialogInterface dialog) {super.onDismiss(dialog);mKeyBoardView.onDismiss();}@Overridepublic void onKeyHide() {dismiss();}public void onGlobalLayout() {Window window = getDialog().getWindow();if (window != null) {mRect.setEmpty();window.getDecorView().getWindowVisibleDisplayFrame(mRect);int screenHeight = UIUtils.getScreenHeight(getContext());int heightDifference = screenHeight - (mRect.bottom - mRect.top);if (heightDifference > screenHeight / 3) {Log.d(TAG, "鍵盤彈出");softKeyBoardIsVisible = true;} else {if (softKeyBoardIsVisible) {Log.d(TAG, "鍵盤隱藏");dismiss();softKeyBoardIsVisible = false;}}}}@Overridepublic void handleMsg(Message msg) {if (msg.what == 1) {onGlobalLayout();mHandler.sendEmptyMessageDelayed(1, 100);}} }

    具體的實現就是上面了,大部分做了注釋,也不需要解釋了,基本上可以解決大部分場景,可以根據自己具體的業務邏輯做一些改動。demo就不給大家了,上面基本上就可以了。

    demo下載

    總結

    以上是生活随笔為你收集整理的优雅的监听软键盘隐藏的全部內容,希望文章能夠幫你解決所遇到的問題。

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

    亚洲年轻女教师毛茸茸 | 91视频88av | 最新超碰在线 | 久久亚洲免费视频 | 国产高清无线码2021 | 日本精品在线看 | 久久国产精品一区二区三区 | 久久免费高清 | 精品一区二区在线免费观看 | 亚洲精品欧洲精品 | 免费看色的网站 | 高清av网 | 国产va饥渴难耐女保洁员在线观看 | 欧美一区二区在线免费看 | 国产成人精品亚洲日本在线观看 | 久久久精品视频网站 | 激情偷乱人伦小说视频在线观看 | 青青草国产在线 | 国产精品不卡视频 | 人人爽人人干 | 亚洲最新av网站 | 麻豆成人精品视频 | 日韩精品一区二区在线观看视频 | 91精品国产麻豆国产自产影视 | 91精品国产91久久久久久三级 | 久久久久久久久久久久久久av | 豆豆色资源网xfplay | 中文字幕色播 | 免费在线观看一区二区三区 | 免费视频91| 在线免费av网 | 在线观看aaa | 99在线视频精品 | 天天操伊人 | 精品国产成人在线影院 | 婷婷色社区 | 美女免费网视频 | 在线电影播放 | 国产精品va视频 | av直接看| 最新成人在线 | 国产美女久久 | 久久午夜视频 | 免费在线观看毛片网站 | av在线播放免费 | 狠狠激情中文字幕 | 手机成人在线电影 | 免费在线观看黄网站 | 午夜免费电影院 | 在线观看黄色免费视频 | 国产免费作爱视频 | 精品久久在线 | 久久成年视频 | 免费韩国av| 在线观看aaa | 欧美国产日韩在线视频 | 久久在线免费观看 | bbw av | 欧美成天堂网地址 | 久久开心激情 | 久久久精品久久 | 精品国产乱码久久久久久久 | 激情综合六月 | 国产成人综合图片 | 久久久久9999亚洲精品 | 国产免费观看高清完整版 | 亚洲精品久久久久久中文传媒 | 日韩av一区二区三区在线观看 | 久久国产精品电影 | 最近日本字幕mv免费观看在线 | 国产 一区二区三区 在线 | 99精品热视频只有精品10 | 欧美日韩一区二区视频在线观看 | 婷婷 中文字幕 | 国产打女人屁股调教97 | 久草在线播放视频 | 成年人视频免费在线播放 | 久久亚洲欧美日韩精品专区 | 久久九九久久 | av在线免费网站 | 亚洲成人精品久久 | 日韩成人免费在线观看 | 日韩免费电影一区二区三区 | 高潮久久久久久久久 | 人人超碰人人 | 91精品国产九九九久久久亚洲 | 欧美色图亚洲图片 | 一级黄色a视频 | 久久国产二区 | 日韩精品免费一区二区在线观看 | 亚洲一级国产 | 国内精品视频一区二区三区八戒 | 九色在线视频 | 999久久国产 | 欧美亚洲国产一卡 | 亚洲在线视频网站 | 成人黄色国产 | 亚洲精品中文字幕在线 | 精品99在线视频 | 日韩在线免费高清视频 | 超碰av在线 | 91看成人 | 成人免费看黄 | 国产福利精品一区二区 | 91精品视频一区二区三区 | 在线看不卡av | 麻豆传媒一区二区 | 操操操日日日 | 五月婷婷六月丁香 | 国产亚洲免费的视频看 | 久久国产精品久久精品国产演员表 | 国产视频2| 亚洲成av人片一区二区梦乃 | 国产一级久久 | 国产不卡在线观看 | 国产麻豆精品传媒av国产下载 | 奇米影视8888 | 免费观看丰满少妇做爰 | 在线99热 | 国产精品18videosex性欧美 | 中文在线免费视频 | 91精品国产入口 | 精品国产一区二区三区在线 | 一区二区欧美在线观看 | 狠狠操.com | 国产只有精品 | 999视频在线播放 | 亚洲成人精品 | 成人免费在线视频 | 国产精品永久 | 中文在线www | 99精品视频免费看 | 黄色一级大片在线免费看产 | www·22com天天操 | 成人在线电影观看 | 亚洲激情在线观看 | 视频在线观看入口黄最新永久免费国产 | 国内精品久久久久久久久久久久 | 成人在线视频观看 | 美女免费视频观看网站 | av先锋中文字幕 | 亚洲三级性片 | 亚洲成人免费在线 | 日韩在线欧美在线 | 久久久精品视频网站 | 日本最新高清不卡中文字幕 | 激情在线免费视频 | 亚洲视频播放 | 麻豆传媒视频在线免费观看 | 韩日精品中文字幕 | 欧美日韩午夜在线 | 97香蕉久久国产在线观看 | 久久视频精品在线 | 狠狠操欧美 | 亚洲精品国偷拍自产在线观看蜜桃 | 97精品国产97久久久久久免费 | 27xxoo无遮挡动态视频 | 西西人体4444www高清视频 | 久久美女免费视频 | 日韩www在线 | 久久dvd| 久久污视频 | 正在播放国产91 | 麻豆成人小视频 | 96精品视频 | 亚洲成av人电影 | 黄视频网站大全 | 亚洲视屏一区 | 综合久久久久久久久 | 超碰97在线资源 | 在线观看中文字幕视频 | 综合久久婷婷 | 色天天中文 | 亚洲精品在线观看不卡 | 日本中文字幕影院 | 一区二区三区四区五区在线视频 | 91九色国产蝌蚪 | 亚洲一片黄 | 国产美腿白丝袜足在线av | av中文字幕在线看 | 国产精品久久久久久久av大片 | 国产自偷自拍 | 美国av片在线观看 | 亚洲视频电影在线 | 亚洲国产精品va在线看黑人动漫 | 日本公妇在线观看高清 | 色婷av| 99精品视频免费全部在线 | 色综合久久中文字幕综合网 | 久久av中文字幕片 | 九色自拍视频 | 91看国产| 人人爽爽人人 | 成人午夜影院在线观看 | 狠狠色丁香婷婷综合久小说久 | 国产中文自拍 | 久草在线这里只有精品 | 国产精品久久久久久久久久了 | 日韩一区二区三区在线看 | 永久免费的av电影 | 国产大片免费久久 | 亚洲免费成人av电影 | 欧美日韩国产mv | 波多野结衣视频一区 | 天天操狠狠操 | 成年人视频免费在线 | 中文字幕免费高清 | 日韩在线免费观看视频 | 国产精品国产三级国产专区53 | 亚洲精品在线观看视频 | 久久久精品99 | 亚洲成人精品久久久 | 91av免费看 | 亚洲精品福利在线观看 | 久久九九影视 | 91精品国产麻豆国产自产影视 | 日韩视频图片 | 久久综合综合久久综合 | 国产99久久久国产精品免费二区 | 欧美激情综合色 | 96av在线| 日韩在线视频网站 | 天天添夜夜操 | 99精品视频在线播放免费 | 国产精品久久久久久久电影 | 日日成人网| 99精品国产亚洲 | 欧美另类sm图片 | 国产精品一区二区久久久 | 久久久免费精品国产一区二区 | 狠狠五月天 | 亚洲一区在线看 | 日韩中文字幕在线不卡 | 午夜美女福利直播 | 久久久精华网 | 一区av在线播放 | 91av在线国产 | 欧美日韩午夜在线 | 麻豆免费视频观看 | 日韩在线视频二区 | 91av99| 九九热免费视频在线观看 | 99在线精品免费视频九九视 | 午夜精品成人一区二区三区 | 伊人久久国产 | 欧美一级黄色网 | 91在线精品秘密一区二区 | 美女网站在线 | 久久免费视频播放 | 日韩中文字幕亚洲一区二区va在线 | 欧美精品xxx| 日韩二区在线 | 亚洲精品美女免费 | 草久草久 | 午夜12点 | 欧洲亚洲女同hd | 日韩精品视频在线免费观看 | 日韩精品中字 | 一区二区精品在线 | 久久久96| 国产亚洲精品久久久久久久久久久久 | 在线观看中文字幕视频 | av中文字幕日韩 | 精品视频 | 亚洲精品免费在线观看视频 | 日韩区欠美精品av视频 | 久久久麻豆视频 | 成人超碰97 | 国产丝袜制服在线 | 亚洲手机天堂 | 久久大片网站 | 亚州av一区 | 韩国一区视频 | 国产.精品.日韩.另类.中文.在线.播放 | 亚洲成人免费在线 | 在线观看视频一区二区三区 | 999久久精品 | 国产美女精品 | 国产在线中文字幕 | av在线日韩 | 欧美性色综合网站 | 伊人婷婷久久 | 国产亚洲一级高清 | www.婷婷色| 天天干人人 | 一本一本久久a久久精品综合妖精 | 久久久免费网站 | 午夜美女福利直播 | 免费看色的网站 | 久久高清免费观看 | 日韩国产欧美视频 | 色在线视频 | 麻豆91在线观看 | 国产精品久久久久久久久久久免费看 | 成人久久18免费网站麻豆 | 日韩一区二区免费在线观看 | 亚洲欧洲精品在线 | 九色琪琪久久综合网天天 | 国产淫片 | 天天草天天干天天射 | 亚洲电影久久久 | 天天干天天上 | 日韩视频精品在线 | 成年人黄色大片在线 | 免费h精品视频在线播放 | 狠狠色狠狠色综合系列 | 九九热99视频 | 久久久av免费 | 久久精品一区二区三区国产主播 | 91精品在线免费视频 | 国产精品一区二区久久精品爱微奶 | 亚洲日本va午夜在线影院 | 在线视频 区| 在线观看中文字幕av | 亚洲成人免费观看 | 国产视频网站在线观看 | .国产精品成人自产拍在线观看6 | 国产精选在线 | 国产精品原创av片国产免费 | 亚洲 中文 在线 精品 | 中文字幕视频播放 | .国产精品成人自产拍在线观看6 | 欧美一区二区精品在线 | 成人动图 | 国产流白浆高潮在线观看 | 欧美 另类 交 | 亚洲人成精品久久久久 | 久艹在线观看视频 | www欧美日韩 | 中文字幕麻豆 | 亚洲涩涩色 | 成人91在线 | 四虎在线视频免费观看 | 不卡的av中文字幕 | www日日夜夜 | 日韩欧美高清一区二区三区 | 久久精品爱爱视频 | 黄色性av| 六月丁香婷婷网 | 久久久受www免费人成 | 国产一级大片免费看 | av在线等 | 久草视频首页 | 99中文字幕视频 | 日韩三级视频在线看 | 日韩动态视频 | 日本爱爱免费视频 | 国产va精品免费观看 | 九九涩涩av台湾日本热热 | 国产区在线视频 | 国产亚洲精品久久久久久移动网络 | 九九视频热 | 97在线播放视频 | 亚洲视频 中文字幕 | 国产精品久久久久久久久免费 | 日韩视频中文字幕在线观看 | 日韩1页| 三级av网站| 国产黄色视 | 91片黄在线观 | 成人手机在线视频 | 久久精品99久久久久久2456 | 操操碰 | 在线电影av | 有码视频在线观看 | 日夜夜精品视频 | av激情五月| 99免费在线视频 | 久久久久久久久久久久久影院 | 亚洲精选视频在线 | av电影不卡在线 | 一级理论片在线观看 | 精品欧美一区二区在线观看 | 337p西西人体大胆瓣开下部 | 久久69精品久久久久久久电影好 | 一区二区三区在线观看 | 久久激情五月激情 | 久久成人欧美 | 九九九热| 99久久夜色精品国产亚洲 | 亚洲 欧美 日韩 综合 | 欧美日韩免费一区 | 天天干天天干天天干天天干天天干天天干 | 天天干,天天射,天天操,天天摸 | 国产亚洲情侣一区二区无 | 91在线免费播放视频 | 亚洲精品字幕在线观看 | 91在线视频免费91 | 日韩黄色免费 | 免费黄色网址网站 | 日本高清免费中文字幕 | 欧美 日韩 成人 | 免费在线中文字幕 | 色综合久久99 | 日韩一区二区免费播放 | av成人免费在线看 | 福利视频精品 | 国产一区二区免费 | 日韩精品欧美专区 | 亚洲成人av一区二区 | 在线涩涩 | 国产啊v在线 | 国产成人久久精品77777综合 | 97超碰总站 | 日本三级国产 | 九九久久久 | 成人久久 | 九九热只有精品 | 天天天综合网 | 最近最新mv字幕免费观看 | 婷婷视频在线播放 | 日韩欧美在线免费观看 | 久久人人艹| 九九久久久久久久久激情 | 国产最新网站 | 五月天激情开心 | 九九久久免费视频 | 黄色小说18 | 日韩在线免费电影 | 97成人在线 | 国产一级片网站 | 亚洲在线免费视频 | 国产成人福利在线 | 天堂在线一区二区三区 | 欧美视频xxx| 中文字幕在线看 | 国产一在线精品一区在线观看 | av超碰在线| 日韩午夜在线观看 | 国产xvideos免费视频播放 | 亚洲成aⅴ人在线观看 | 99精品视频免费看 | 国产成人精品区 | 在线免费日韩 | 开心色插 | 99精品在线免费在线观看 | 91在线免费观看网站 | 特级西西444www大精品视频免费看 | 五月综合在线观看 | 日韩中文字幕一区 | 国产精品18久久久久vr手机版特色 | 日韩三级在线观看 | 久久国产精品99久久久久久丝袜 | 99免费在线播放99久久免费 | 欧美黑人性猛交 | 91手机在线看片 | 亚洲另类在线视频 | 精品国偷自产国产一区 | 九九久久成人 | 国产精品国产三级国产不产一地 | www久久久久 | 国产成a人亚洲精v品在线观看 | 天天射天天拍 | 热久久影视 | 久久久麻豆 | 国产黑丝一区二区 | 日本黄色免费在线 | 免费成人在线视频网站 | 992tv在线 | 久久在线免费观看 | 久久综合久色欧美综合狠狠 | 99国产一区二区三精品乱码 | 久草视频免费观 | 日韩高清av在线 | 欧美一级片在线免费观看 | 国产精品男女啪啪 | 午夜影院先 | 精品国产成人在线影院 | 91亚洲精品国偷拍自产在线观看 | 亚洲少妇天堂 | 日韩欧美在线视频一区二区 | 97视频久久久 | 人人射人人澡 | 成年人网站免费观看 | 欧美男男激情videos | 中文字幕在线影视资源 | 日韩av一区二区三区 | 国产美女精品视频免费观看 | 国产精品一区二区果冻传媒 | 日韩精品一区二区久久 | 国产精品毛片一区二区 | 观看免费av | 国产成人黄色片 | 国产精品一区在线观看 | 国产成人一区二区三区在线观看 | 色福利网站 | 黄色一级在线视频 | 日韩影视在线观看 | 亚洲国产成人在线 | 91大神视频网站 | 中文字幕在线观看国产 | 欧美在线视频第一页 | 亚洲 av网站 | 福利视频一区二区 | 日韩在线网 | 99久久免费看 | 在线中文字幕一区二区 | 色哟哟国产精品 | 久久久久成人精品亚洲国产 | 69久久久久久久 | 国产黄色片在线 | 国产一级淫片在线观看 | 久操操 | 午夜.dj高清免费观看视频 | 久久国产精品免费一区二区三区 | 中文资源在线播放 | 亚洲午夜久久久久久久久久久 | 18性欧美xxxⅹ性满足 | 午夜在线免费观看视频 | 日韩一区二区三区不卡 | 亚洲综合精品视频 | 色资源网在线观看 | 久久综合影视 | av免费在线网 | 国产精品美女久久久久久久 | 日韩欧美高清一区二区 | 国产一区二区在线观看免费 | 国产黄色美女 | 国产精品视频区 | 欧美专区国产专区 | 久久av中文字幕片 | 在线色吧 | 国产免费观看久久 | 日韩中文在线电影 | 国产精品久久久久免费a∨ 欧美一级性生活片 | 久久精品视频99 | 2019精品手机国产品在线 | 国产91全国探花系列在线播放 | 日韩免费高清在线观看 | 国产v欧美| 日日夜夜网站 | 五月宗合网 | 好看av在线 | 激情久久影院 | 天天操天天草 | 色网免费观看 | 国产精品女人久久久久久 | 久久精品久久久久 | 人成电影网 | 亚洲欧美精品在线 | a国产精品 | 精品99久久久久久 | 国产亚洲视频在线观看 | 美女一级毛片视频 | 久久久国产精华液 | 亚洲日本va午夜在线影院 | 国产一级片免费视频 | 国产破处在线视频 | 亚洲夜夜综合 | 人人爽人人爽人人片av免 | 中文字幕欧美日韩va免费视频 | 久久国产手机看片 | 蜜桃视频成人在线观看 | 91黄色在线观看 | 天天爱天天操 | 欧美影院久久 | 日韩中文字幕电影 | 国产一级电影网 | 亚洲精品免费在线观看视频 | 国产精品久99 | 91黄在线看 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 日韩在线观看三区 | av一级免费 | av 在线观看| av一级网站| 久久精品中文 | 99久久www免费 | 天天草天天爽 | 91亚瑟视频 | 色综合久久五月天 | 国产精品久久久视频 | 日日久视频| 视频一区二区三区视频 | 国产亚洲午夜高清国产拍精品 | 亚洲高清av | 91大神dom调教在线观看 | 97久久久免费福利网址 | 久草视频在线资源站 | 一区二区三区电影在线播 | 国产不卡一 | 五月天久久婷婷 | 在线观看av国产 | 色综合激情久久 | 91x色 | 日韩中文字幕免费在线观看 | 精品久久网 | 国产小视频国产精品 | 992tv在线成人免费观看 | 国产精品一区二区三区在线播放 | 麻豆av一区二区三区在线观看 | 99九九视频 | 色网站黄 | 日日日操| 色综合久久88色综合天天6 | 麻豆影视网站 | 国产最新在线视频 | 91成人在线网站 | 国产精品av一区二区 | 蜜臀av夜夜澡人人爽人人 | 精品久久久久久久 | 九九九热| av在线a| 99精品视频在线免费观看 | 久草在线免费资源站 | 中文字幕视频播放 | 亚洲高清91 | 在线视频一二区 | 久久综合久久久久88 | 欧美日韩精品久久久 | 日日干干 | 久久好看免费视频 | 色天天综合网 | 精品在线不卡 | www久| 久久久久久久久久网 | 日韩视频一 | 中文字幕免费高 | 高清不卡一区二区在线 | 国产小视频免费在线观看 | 97超碰国产精品 | 玖草在线观看 | 色综合欧洲 | av成人免费网站 | 久久精品第一页 | 欧美综合干 | 亚洲天堂精品 | 国产精品不卡一区 | 日韩电影在线观看一区二区三区 | 91高清免费看 | 国产成人一级 | 国产精品久久久久久电影 | 日韩av电影中文字幕 | 久久精品三 | 亚洲午夜久久久久久久久 | 亚洲精品成人av在线 | 国产一区二区三区高清播放 | 国产一区电影在线观看 | 亚洲闷骚少妇在线观看网站 | 国产黑丝一区二区三区 | 九九久久精品 | 中文字幕色在线视频 | 国产在线视频资源 | 91网在线看 | 久久精品国产美女 | 亚洲精品毛片一级91精品 | 午夜影视一区 | 亚洲va韩国va欧美va精四季 | 国产精品久久久久久久久久久久冷 | 日韩福利在线观看 | 中文字幕免费观看视频 | 综合精品在线 | 日本黄色免费在线观看 | www.午夜视频 | 天天射天天爱天天干 | 天天综合网久久综合网 | 亚洲精品影院在线观看 | 欧美日韩高清在线 | 欧美影院久久 | 亚洲作爱 | 久草在线播放视频 | 色久天 | 五月激情天 | 婷婷去俺也去六月色 | 国产视频亚洲 | 玖玖爱在线观看 | 精品久久久久久久久久久久 | 91福利免费 | 日韩高清无线码2023 | 免费在线观看av | 久草男人天堂 | 97人人网 | 欧美黄色软件 | 一级黄色片在线播放 | 中文字幕久久精品一区 | 亚洲成av人影院 | 超级碰碰免费视频 | 久久这里| 狠狠色丁香婷婷综合视频 | 激情综合网在线观看 | 国产成人精品亚洲精品 | 国产99一区 | 深爱开心激情网 | 亚洲精品ww | 日韩小视频 | 一区二区三区在线观看免费 | 色爱区综合激月婷婷 | 日韩二三区 | 成人影片在线免费观看 | 国产黄色av| av不卡免费在线观看 | 一区二区三区精品久久久 | 国产亚洲精品免费 | 91九色国产在线 | 免费在线黄 | 精品视频www | 亚洲欧洲在线视频 | 亚洲精品美女在线观看 | 男女精品久久 | 国产爽妇网 | 日韩极品视频在线观看 | 久久午夜色播影院免费高清 | 国内三级在线观看 | 色欧美成人精品a∨在线观看 | 91精品国产综合久久婷婷香蕉 | 国产成人一区二区三区在线观看 | 偷拍精品一区二区三区 | 啪啪免费试看 | 国产精品丝袜在线 | 在线播放日韩av | 99精品视频免费在线观看 | 欧美性生爱| 日日婷婷夜日日天干 | 五月天丁香视频 | 91一区二区在线 | 亚洲我射av| 亚洲1区 在线 | 91网址在线| 天天色草 | 色偷偷中文字幕 | 国产黄色片一级 | 精品国产一区二区三区蜜臀 | 男女啪啪免费网站 | 国产精品久久久久久久久久不蜜月 | 色在线中文字幕 | 欧美日韩在线免费观看 | 天天综合久久 | 九九爱免费视频在线观看 | 亚洲精品视频一 | 在线视频第一页 | 99视频在线免费观看 | 久草在线免费在线观看 | 免费高清国产 | 亚洲最快最全在线视频 | 成人中文字幕+乱码+中文字幕 | 国产主播大尺度精品福利免费 | 天堂av官网 | 久久夜色精品国产欧美乱 | 国产精品无av码在线观看 | 久草电影在线观看 | 欧美日在线| 深爱婷婷网| 久久97久久97精品免视看 | 中文字幕人成一区 | 日本久久久精品视频 | 日日干网址 | 最新av中文字幕 | 麻豆传媒视频在线免费观看 | 国产91精品看黄网站在线观看动漫 | 激情婷婷综合 | 超碰97中文 | 久久国语| 草久久久久 | 亚洲乱码精品久久久 | 99精品视频一区二区 | 亚洲精品自在在线观看 | 国产精品高清免费在线观看 | 97av视频在线观看 | 国产不卡在线播放 | 国产精品第一页在线观看 | 欧美精品免费视频 | 黄网站app在线观看免费视频 | 欧美一级电影片 | 日韩激情片在线观看 | 182午夜在线观看 | 亚洲国产伊人 | 亚洲精品国内 | 久草色在线观看 | 色中色资源站 | 精品综合久久久 | 天天操福利视频 | 国产精品成人av电影 | 亚洲精品在线观看免费 | 日韩欧美99 | 久久综合九色综合97_ 久久久 | 国产高清一 | 亚洲最新在线 | 久久免费看毛片 | 久久久久国 | 99中文字幕 | 成年人国产在线观看 | 2022中文字幕在线观看 | 69绿帽绿奴3pvideos | 奇米网8888| 国产精品一区在线观看 | 五月天久久久久久 | 国产中文字幕在线看 | 国产精品一区二区久久久久 | 久久99婷婷| 97视频在线免费观看 | 91av影视 | 久爱综合 | 久久久亚洲网站 | 午夜精品久久久久久久久久久 | 天天色中文| 伊人色综合久久天天网 | 天天搞夜夜骑 | 99在线精品视频 | 亚洲毛片在线观看. | 久久免费电影网 | 精品久久久久国产免费第一页 | 欧美日本啪啪无遮挡网站 | 日韩精品久久一区二区 | 色婷婷av在线 | 婷婷五综合 | 在线观看免费av网站 | 国产精品久久久久免费观看 | 欧美一区二区在线免费观看 | 最近最新中文字幕视频 | 91亚洲国产 | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 亚洲精品资源在线观看 | 毛片网站在线观看 | 国产精品2018 | 日韩三级精品 | 在线观看视频中文字幕 | 日日久视频 | 97视频总站 | 美女黄濒 | 久久成人在线视频 | 色狠狠综合| 在线观看香蕉视频 | 91麻豆网| 久久综合久色欧美综合狠狠 | 国产午夜精品一区 | www九九热| 亚洲成人av在线 | 超碰国产在线观看 | 国产区在线看 | 国产人成一区二区三区影院 | 亚洲精品videossex少妇 | 一二三区av | 99久久精品免费一区 | 黄污网 | 91黄色影视 | 一区二区影院 | 成全免费观看视频 | av免费看av| 激情小说网站亚洲综合网 | 久久免费毛片视频 | 免费成人在线网站 | 高清久久久 | 综合天天网 | 中文字幕乱码一区二区 | av性网站| 国产日本亚洲高清 | 日韩二区精品 | 丁香六月久久综合狠狠色 | 精一区二区 | 色综合激情网 | 精品国产乱码久久久久久三级人 | 免费av福利 | 国产91电影在线观看 | 国产亚洲婷婷免费 | 丁香花中文在线免费观看 | 91成人在线视频 | 亚洲精品av中文字幕在线在线 | 十八岁免进欧美 | 伊人宗合网 | www.黄色片.com | 国产精品免费在线播放 | 日本高清dvd | 久久精品中文字幕少妇 | 天天艹天天干天天 | 天堂在线成人 | 97视频网址 | 91精品久久久久久综合乱菊 | 免费色黄 | 91亚洲夫妻| 日韩精品一区二区三区免费观看视频 | 久久久亚洲国产精品麻豆综合天堂 | 久久一区二区三区四区 | 在线99 | 开心丁香婷婷深爱五月 | 99在线精品免费视频九九视 | 在线日韩一区 | 在线观看免费一区 | 久久精品国产一区二区 | 天天精品视频 | 午夜精品久久久久久久99 | 日韩欧美99 | 精品久久久久久久久久久久久久久久久久 | 99久久电影 | 成人在线视频在线观看 | 久艹在线观看视频 | 狠狠色香婷婷久久亚洲精品 | 粉嫩av一区二区三区免费 | 91最新地址永久入口 | 国产亚洲精品女人久久久久久 | 亚洲经典视频 | 在线观看资源 | 一区二区三区高清在线观看 | 精品福利视频在线观看 | 亚洲精品91天天久久人人 | 91免费高清 | 免费高清在线观看成人 | 99热国内精品 | 久久综合九色综合97_ 久久久 | 国产探花在线看 | 久久久精品99 | 亚洲精品网址在线观看 | 超碰国产人人 | 国产福利在线不卡 | 91天堂素人约啪 | 国产一区二区三区四区在线 | 中文在线中文资源 | 天天天天天天操 | 丁香五婷 | 欧美日韩午夜在线 | 国产在线观看你懂得 | 久亚洲精品 | 99久久久国产精品美女 | 精品久久久久久久久中文字幕 | 在线观看中文字幕第一页 | 久久av影视 | 天天天天色综合 | 国产美女搞久久 | 日本三级大片 | 国产99久久九九精品免费 | 97精品久久 | 国产在线 一区二区三区 | 蜜臀久久99静品久久久久久 | 日本黄色免费网站 | 成人91免费视频 | 亚洲区精品视频 | 操老逼免费视频 | 亚洲精品视频在线观看免费 | 夜夜操综合网 | 99产精品成人啪免费网站 | 国产剧情av在线播放 | 亚洲人人射| 欧美激情亚洲综合 | 亚洲一级片免费观看 | 国产精品久久视频 | 免费看成人片 | 中文字幕在线观看一区 | 操天天操| 久久精品老司机 | 亚洲自拍偷拍色图 | 在线视频观看成人 | 天天翘av| 天堂在线一区二区三区 | 四虎永久精品在线 | 伊人色综合久久天天网 | 98精品国产自产在线观看 | 99精品在线观看 | 免费在线一区二区三区 | 精品欧美乱码久久久久久 | 婷婷久月| 伊人春色电影网 | 国产中出在线观看 | 国产视频久久久久 | 精品久久久免费 | 色婷婷亚洲| 亚洲国产日韩一区 | 国产精品九九视频 | 99久久精品免费看国产免费软件 | 婷婷激情5月天 | 在线观看一区二区精品 | www日韩在线| 精品视频123区在线观看 | 中文字幕一区二区三区四区视频 | 欧美日韩激情网 | 亚洲国产一区在线观看 | 天天干天天干天天干天天干天天干天天干 | 91九色视频国产 | 国产高清在线视频 | 国产这里只有精品 | 2024国产精品视频 | 国产精品精品国产 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 色六月婷婷 | 久插视频| 97精品国产97久久久久久 | 俺要去色综合狠狠 | 国产精品久久久久久电影 | 成人免费网站视频 | 日本三级香港三级人妇99 | 久久久在线视频 | 精品久久久久久电影 | 日本一区二区三区免费看 | 婷婷五月情| 国产一区二区在线免费观看 | 国产99精品在线观看 | 午夜在线看片 | 国产一区二区三区免费视频 | 韩国精品福利一区二区三区 | 日韩在线电影观看 | 国产黄视频在线观看 | 日韩亚洲在线视频 | 色综合婷婷 | 欧美在线观看小视频 | 欧美伦理一区二区三区 | 亚洲免费不卡 | 久久99久久99精品中文字幕 | 欧美日在线 | www.夜夜| 国产一区二区三区黄 |