1

WebViewを使用してアプリケーション内のURLを表示しています。デバイスの[戻る]ボタンをクリックすると、アプリケーションが終了して閉じます。例:私はリンクを次のように与えています

w.loadUrl("http://www.google.com");

その中で私は検索していて、それはウェブビュー内の次のページに行きます。しかし、私が戻ると

ボタンキーを押すと、アプリケーションが閉じ、検索した履歴に戻りません。

これを解決する方法。これで与えられるものはありますか?もしそうなら、何を与えるべきですか?

@Override
public void onBackPressed() { }

前もって感謝します。

4

4 に答える 4

2

If you want to navigate back through your history in webview add this below code to your webview activity

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
         mWebView.goBack();
         return true;
    }
    return super.onKeyDown(keyCode, event);
}
于 2013-02-05T06:01:16.287 に答える
1

u can see both link or below code:-

How to go back to previous page if back button is pressed in WebView?

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if(event.getAction() == KeyEvent.ACTION_DOWN){
        switch(keyCode)
        {
        case KeyEvent.KEYCODE_BACK:
            if(mWebView.canGoBack() == true){
                mWebView.goBack();
            }else{
                finish();
            }
            return true;
        }

    }
    return super.onKeyDown(keyCode, event);
}
于 2013-02-05T06:04:20.493 に答える
0

in that case you need to override back button through this code you can override back button

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {                                              
    if (keyCode == KeyEvent.KEYCODE_BACK)  {
         moveTaskToBack(true);
         return true;
    }
    return super.onKeyDown(keyCode, event);
}
于 2013-02-05T06:04:38.857 に答える
0

u can use below code, it's worked for me.

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    if (Integer.valueOf(android.os.Build.VERSION.SDK) < 7 
            && keyCode == KeyEvent.KEYCODE_BACK
            && event.getRepeatCount() == 0) {
        // Take care of calling this method on earlier versions of
        // the platform where it doesn't exist.
        onBackPressed();
    }
    return super.onKeyUp(keyCode, event);
}

@Override
public void onBackPressed() {
    return;
}
于 2013-02-05T08:20:24.247 に答える