1. 程式人生 > >Fragment Webview 返回鍵監聽

Fragment Webview 返回鍵監聽

之前因為Fragment,不能監聽返回鍵,所以把Fragment返回監聽,放在了FragmentActivity上。

FragmentActivity.java

 @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
            if (fragment instanceof RechargeSuccessFragment
                    || fragment instanceof
HuifuWithdrawalSuccessFragment) { finish(); } else { popBackStack(); } return true; } return super.onKeyDown(keyCode, event); }

後來又加上要監聽webview返回,對之前程式碼不太滿意。後修改如下:

Fragment.java

mWebView.setOnKeyListener(new View.OnKeyListener() {
            @Override
            public
boolean onKey(View v, int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { if (mWebView != null && mWebView.canGoBack()) { mWebView.goBack(); } else { mActivity.popBackStack(); } return
true; } return false; } });

搞定!

相關推薦

Fragment Webview 返回

之前因為Fragment,不能監聽返回鍵,所以把Fragment返回監聽,放在了FragmentActivity上。 FragmentActivity.java @Override public boolean onKeyDown(int keyC

ionic v4 關於返回 (hardware back button)

android手機上的返回鍵,會自動的使路由後退。但少數時候我們可能不需要這個後退功能,希望自己監聽點選回退操作。 比如,想通過點選返回按鈕關閉一個modal,並且不想後退。 1.使用@HostListener 監聽ionBackButton事件 @HostListener('docume

androidのBack返回,home,menu使用

1.點選back 鍵後,彈出對話方塊 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode==

Android中Fragment裝載WebView 返回設定問題

1. Fragment使用方便快捷,尤其適合在一個Activity中需要切換多個頁面的時候使用 2. 最近在使用Fragment + WebView做小Demo的時候,發現只要在首頁Activity的

Android TV開發中所有的遙控器按鍵及註意事項,新增home

char 技術分享 ces num block eas article 分享 iou 原文:Android TV開發中所有的遙控器按鍵監聽及註意事項,新增home鍵監聽 簡單記錄

Android Back Home

Android Back Home鍵監聽   Android Back Home鍵監聽   Back鍵的監聽   對於Back鍵的監聽比較容易,可以在多個系統回撥處攔截,比如在activity的下列方法中都可以收到Back鍵按下的事件: @Override

home

public class BaseActivity extends Activity { private HomeWatcherReceiver mHomeWatcherReceiver = null; private boolean isNeedFinish = false;

Ctrl事件

Ctrl鍵屬性 /// <summary> /// 記錄是否按下Ctrl鍵 /// </summary> /// <param name="sender"></param>

返回按鍵-Quick-Cocos2dx

按下返回鍵監聽 function FightScene:onKeyboard(code, event) if code == cc.KeyCode.KEY_BACK then

android6.0 webview載入完成

好久沒有更新個部落格了。今天遇到了一個坑,公司app需要彈出一個廣告頁面,所以自然就想到了dialog載入webview,連結h5給完事,但是在載入的時候webview載入需要時間,所以會出現一個空白區域,老大說這個是不能容忍的,所以自然想到了webview的監

mui+vue實現webapp的手機物理

    有人反映本博文寫得有點模糊,我就修改一下,詳細點說明本功能的實現。可能還有會有表達不清楚的地方,有問題的朋友可以提出,如果實現會出現bug也請提出。本人菜鳥一枚,輕噴!!    由於專案需求,vue前端技術打包做成的app必須對手機的返回鍵需要進行監聽。在網上大量查詢

Android TV開發中所有的遙控器按鍵及注意事項,新增home

簡單記錄下android 盒子開發遙控器的監聽 ,希望能幫到新入門的朋友們 不多說,直接貼程式碼 public class MainActivity extends Activity { private String TAG="key";

兩步搞定Fragment返回

Fragment可以說是在Android開發必需要使用到技術,專案中的介面基本上都是使用Fragment來實現,而Activity只是作為Fragment的載體,但有些特殊情況下Fragment也不得不處理Back鍵,如果是Activity的話還好說,直接覆蓋 Activity的onBackPresse

android Home

最近的專案需要做Home鍵監聽,網上查閱了很多資料,感謝那些無私奉獻的猿們,下面我就總結下我是如何實現Home鍵監聽的。 android系統:2.3.3 首先在需要監聽home鍵的activity中重寫onAttachedToWindow方法: @Override p

Android常用之返回按鍵

在安卓開發中,我們經常要對按鍵進行監聽,今天跟大家分享一下最常用的按下返回退出功能的實現. 如果沒有對返回鍵設定監聽,通常按下一次返回鍵就會退出程式或退出某個介面,這樣是很不人性化的,我們可以有兩種處理方式: 按下返回鍵時彈出一個對話方塊(AlertDia

Fragment中載入網頁(WebViewBack ,實現返回上一頁的功能

首先建立一個抽象類BackHandledFragment,該類有一個抽象方法onBackPressed(),所有BackHandledFragment的子類在onBackPressed方法中處理各自對Back事件的消費邏輯。onBackPressed返回布林值,宿主Acti

Android Fragment 物理返回 back

在很多場景下,我們需要 Fragment 監聽物理 back 鍵,而不是 Activity,這個時候我們只能做一些處理,來讓 Fragment 攔截。 首先在 Fragment 中自定義回撥方法,如下: public boolean onBackPressed() { E

Fragment返回Fragment響應Activity的onKeyDown事件)Kotlin版

在Fragment不僅僅只可以監聽返回鍵哦,所有你見過的按鍵都可以監聽,什麼A~Z,0~9,F1~F12等等我就不舉例子了。至於為什麼寫這篇部落格,因為我的專案是一個Activity+多個Fragment架構的,下面進入正題。。。。直接上程式碼(原創轉載請標明) overrid

Android之小技巧 - Fragment返回

使用場景  在一個Fragment中按下返回鍵,先判斷下PopupWindow是否顯示,若顯示,隱藏PopupWindow,否則,執行系統的返回事件。 程式碼示例 @Override public void onResume() { super.onResu

android 在fragment中如何返回,home

在activity中用keydown很容易實現對返回鍵的監聽,但是這個函式不能再fragment中過載。  通過我嘔心瀝血的尋找,終於找到了解決辦法,對其他物理按鍵的監聽也同理。  Java程式碼   public class phonerecorder exten