gpt4 book ai didi

Android 硬件后退键不起作用

转载 作者:行者123 更新时间:2023-11-29 01:55:28 25 4
gpt4 key购买 nike

我有一个带有 WebView 的 Android 应用程序,但是当我按下硬件后退按钮时,没有任何反应。我希望用户返回到 Webview 上加载的上一个页面。我在这段代码中缺少什么:

package kenya.cancerbank;

import tscolari.mobile_sample.R;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class CancerBank extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

WebView mainWebView = (WebView) findViewById(R.id.mainWebView);

WebSettings webSettings = mainWebView.getSettings();
webSettings.setJavaScriptEnabled(true);

mainWebView.setWebViewClient(new MyCustomWebViewClient());
mainWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);

mainWebView.loadUrl("http://kenyacancerbank.org/android");
}
@Override
public void onBackPressed() {
return;
}

private class MyCustomWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
}

当他们按下硬件后退键时,我需要向这段代码添加什么才能返回到他们访问过的上一个页面。

}
@Override
public void onBackPressed() {
return;
}

最佳答案

您需要手动使 WebView 返回一个页面。简单地 returning 只会给你一个无用的方法,因为它除了返回之外什么都不做。并且由于您覆盖了父类(super class)方法,您会看到一个“非工作按钮”

WebView mainWebView 设为实例变量:

public class CancerBank extends Activity {
WebView mainWebView;
//rest of code

然后在 onCreate() 中找到并为其分配正确的引用:

 @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

mainWebView = (WebView) findViewById(R.id.mainWebView);
//rest of code

然后覆盖 onBackPressed() 并检查 WebView 是否可以返回。如果可以,让它通过goBack()返回:

@Override
public void onBackPressed() {
if (mainWebView.isFocused() && mainWebView.canGoBack()) {
mainWebView.goBack();
}
}

关于Android 硬件后退键不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15444273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com