2010-11-09 78 views
38

如何禁用並隱藏WebView中的地址欄?禁用Android webview中的地址欄

+7

請停止叫喊。 – 2010-11-09 17:05:12

+1

已編輯。我們現在可以拿走我們的手...... – 2010-11-09 17:09:12

+0

誰在喊? – jonney 2010-11-09 17:14:37

回答

55

WebView沒有地址欄。

如果你認爲你有一個WebView,並且你看到一個地址欄,那不是你的WebView。相反,您正在瀏覽瀏覽器應用程序。您最有可能告訴WebView加載的網址做了重定向,並且您沒有使用WebViewClientshouldOverrideURLLoading()截取該重定向。

+0

瀏覽器應用程序?我沒有打算啓動瀏覽器應用程序。我基本上只使用一個xml佈局,只有一個webview來填充屏幕,我簡單地調用LoaUrl到該webview。 從sdk跟着這個例子http://developer.android.com/reference/android/webkit/WebView.html – jonney 2010-11-09 20:45:23

+1

@jonney:正如我寫的,很可能,你告訴'WebView'加載的URL做了一個重定向,並且您沒有使用「WebViewClient」和「shouldOverrideURLLoading()」攔截重定向。除非使用「WebViewClient」來更改該行爲,否則重定向或單擊鏈接將在用戶選擇的瀏覽器中加載生成的URL。 – CommonsWare 2010-11-09 21:32:13

+0

當你訪問google.com時,android.com網站上給出的地址是「google.com」,它重定向到google.lk:D datz爲什麼我看到地址欄..現在我明白了......非常感謝。 – 2011-01-31 17:36:53

21

最後,我試着用這個。它的工作對我來說..

這裏是工作的代碼

private WebView webview ; 
@Override 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_ebook); 

    //webview use to call own site 
    webview =(WebView)findViewById(R.id.webView); 

    webview.setWebViewClient(new WebViewClient());   
    webview .getSettings().setJavaScriptEnabled(true); 
    webview .getSettings().setDomStorageEnabled(true);  
    webview.loadUrl("http://www.google.com"); 
} 

和你的整個的main.xml(RES /佈局)看起來應該是這樣的:

<WebView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/webView" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    /> 

不要去添加布局。

11
webview.setWebViewClient(new WebViewClient()); 

解決了這個問題對我來說..