【问题标题】:Show google search results in edit text- WebView在编辑文本中显示谷歌搜索结果 - WebView
【发布时间】:2014-02-15 07:59:57
【问题描述】:

我有一个 WebView 以及作为搜索栏的编辑文本,但我不想在字段中输入整个 url,而是希望它也像“facebook”和“google”一样进行搜索,我在这里找到了一个答案,但我没有想知道怎么做,有人可以帮我吗?

How to show Android Google default search results in webview?

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ProgressBar;

public class MainActivity extends Activity {
private WebView mWebView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    CookieManager.getInstance().setAcceptCookie(true);//Enable Cookies
    mWebView = (WebView) findViewById(R.id.webView1);
    mWebView.getSettings().setJavaScriptEnabled(true);//Enable Java Script
    mWebView.setWebViewClient(new HelloWebViewClient());
    mWebView.loadUrl("http://www.google.com/"); //Set Home page
    mWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);//Remove ScrollBars
    mWebView.getSettings().setDefaultFontSize(12);//Set Font Size
    mWebView.getSettings().setLoadsImagesAutomatically(true);//Enable Image Loading
    mWebView.getSettings().setPluginState(PluginState.ON);//Enable Flash
    mWebView.getSettings().setRenderPriority(RenderPriority.HIGH); //improves Feedback     on touch
    mWebView.setBackgroundColor(0x00000000);//Transparent Screen When Loading
    //mWebView.getSettings().setBuiltInZoomControls(true);//Set Zoom Controls 
    //mWebView.getSettings().setDisplayZoomControls(false);//Requires Api 11
    mWebView.getSettings().setAppCacheMaxSize(1024*1024*8);//Set Cache (8mb)
    String appCachePath =     getApplicationContext().getCacheDir().getAbsolutePath();//Set Cache (8mb)
    mWebView.getSettings().setAppCachePath(appCachePath);//Set Cache (8mb)
    mWebView.getSettings().setAllowFileAccess(true);//Set Cache (8mb)
    mWebView.getSettings().setAppCacheEnabled(true);//Set Cache (8mb)
    mWebView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);//Set Cache (8mb)


}
private class HelloWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView webview, String url)
{


webview.loadUrl(url);
return true;
}
}

 @Override
 public boolean onKeyDown(int keyCode, KeyEvent event)
 {

 if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack())

{
mWebView.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
}

【问题讨论】:

    标签: android webview


    【解决方案1】:

    正如该答案中所述,您需要在按钮的onClick 方法中获取从EditText 获得的文本,并将其附加到URL https://www.google.com/search?q=query_string

    【讨论】:

    • 您学习过布局和视图的基础知识吗?我没有看到您可以输入任何搜索查询的任何 EditText。 (不是粗鲁或任何事情。)
    • 嗯是这么想的。那么,您需要添加一个editText 和一个按钮。在editText和按钮的onClick方法中输入搜索查询,您需要获取搜索查询并执行我在答案中提到的操作。如果您不知道如何处理 editText 和按钮,则需要学习所有这些。这是非常基本的东西。
    • 大声笑。只需先学习基础知识。这包括视图等。一旦你掌握了窍门,我们就可以从网络视图继续。 “Tab sir ke upar se nahi niklega”:P
    • 如果您已经创建了应用程序,那可能是什么问题??
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-10
    • 1970-01-01
    • 2016-05-14
    • 2021-12-28
    • 2011-08-06
    • 1970-01-01
    相关资源
    最近更新 更多