如何使用 EditText 在 WebView 中搜索网站的搜索栏?

How to search on a website's search bar in WebView by using EditText?

我有一个 EditText 和一个 WebView。 WebView 在初始化时加载亚马逊网站。当我在 EditText 中输入查询时,我希望亚马逊网站搜索查询(在网站的搜索栏上搜索)。非常感谢任何帮助。 这是我的代码

webView = v.findViewById(R.id.webview);
    url = "https://amazon.com";
    webView.setWebViewClient(new WebViewClient(){

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                view.loadUrl(String.valueOf(request.getUrl()));
            }
            return true;
        }

        @Override
        public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
            handler.proceed(); // Ignore SSL certificate errors
        }
    });

    webView.getSettings().setLoadsImagesAutomatically(true);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
    webView.loadUrl(url);

您可以将 WebView 导航到来自亚马逊的搜索 url:

https://www.amazon.com/s/?field-keywords=搜索关键词

final String searchURL = "https://www.amazon.com/s/?field-keywords=";
String keywords = "something";
view.loadUrl(searchURL + keywords);

也许您需要将关键字转换为符合 URL 的格式,尤其是在包含特殊字符时。