2012-11-16 60 views
2

我創建了一個WebView應用程序,一切正常。 我是Android新手。我需要的應用程序的唯一剩餘功能是隱藏地址欄。因爲我希望應用看起來更像普通應用,而不是網頁瀏覽器窗口中的網頁。隱藏Android中的瀏覽器地址欄

我的代碼是這樣的,

package com.Mobi.ebookread; 

public class Mobile extends Activity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main);   
     final WebView webview = (WebView) findViewById(R.id.helloWebView); 
     webview.getSettings().setJavaScriptEnabled(true); 
     webview.loadUrl("http://www.google.com"); 

    } 
} 

我該怎麼辦呢?

回答

1

我覺得有一個問題。 webview沒有地址欄,似乎瀏覽器應用程序正在打開。有可能發生重定向並導致瀏覽器應用程序打開,並且您沒有攔截使用WebViewClient和shouldOverrideURLLoading()的重定向。下面是webview的外觀。

WebView

+0

感謝您的意見 – SahanS

0

試試下面的代碼:

webView=(WebView) findViewById(R.id.helloWebView); 
webView.getSettings().setJavaScriptEnabled(true); 
webView.setWebViewClient(new WebViewClient() { 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     view.loadUrl(url); 
     return true; 
    } 
}); 
webview.loadUrl("http://www.google.com"); 
+0

感謝您的幫助。 – SahanS

1

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

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity); 
    //webview use to call own site 
    webview =(WebView)findViewById(R.id.webView1); 
    webview.setWebViewClient(new WebViewClient()); //use to hide the address bar  
    webview .getSettings().setJavaScriptEnabled(true); 
    webview .getSettings().setDomStorageEnabled(true); //to store history  
    webview.loadUrl("http://www.google.com"); 
    } 

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

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

不要去加布局。