亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

【Android 開發教程】WebView

系統 2138 0

本章節翻譯自《Beginning-Android-4-Application-Development》,如有翻譯不當的地方,敬請指出。

原書購買地址 http://www.amazon.com/Beginning-Android-4-Application-Development/dp/1118199545/


WebView能夠讓你在activity中去內嵌一個web瀏覽器。如果你的應用需要內嵌一些web內容的話,這是非常有用的。

下面展示如何在activity中通過編碼的方式去加載網頁中的內容。

1. 新建一個工程,WebView。

2. main.xml中的代碼。

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

	<WebView android:id="@+id/webview1"
		android:layout_width="wrap_content"
		android:layout_height="wrap_content" />

</LinearLayout>
  
3. WebViewActivity.java中的代碼。

    public class WebViewActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        WebView wv = (WebView) findViewById(R.id.webview1);
                
        WebSettings webSettings = wv.getSettings();
        webSettings.setBuiltInZoomControls(true);
        
        wv.loadUrl(
            "http://chart.apis.google.com/chart" +
            "?chs=300x225" +
            "&cht=v" +
            "&chco=FF6342,ADDE63,63C6DE" +
            "&chd=t:100,80,60,30,30,30,10" +
            "&chdl=A|B|C");

}
  
4. 在AndroidManifest.xml中添加訪問網絡的權限。

    <uses-permission android:name="android.permission.INTERNET"/>
  
5. 按F11在模擬器上面調試。

【Android 開發教程】WebView


想要使用WebView去加載一個網頁的話,就需要使用loadUrl()方法,并傳入URL參數,就象這樣:

    wv.loadUrl(
            "http://chart.apis.google.com/chart" +
            "?chs=300x225" +
            "&cht=v" +
            "&chco=FF6342,ADDE63,63C6DE" +
            "&chd=t:100,80,60,30,30,30,10" +
            "&chdl=A|B|C");
  
如果想要顯示內置的放大或縮小控件,你需要從WebView中獲取WebSettings屬性對象,然后調用setBuildInZoomControls()方法:

            WebSettings webSettings = wv.getSettings();
        webSettings.setBuiltInZoomControls(true);
  
【Android 開發教程】WebView


有的時候當你加載一個網頁,這個網頁會指向www.google.com,WebView將會去調用設備的Browser瀏覽器去加載所指向的網址。注意下圖中,屏幕上方的URL條,此時已經調用了本地的Browser瀏覽器應用。

【Android 開發教程】WebView

如果想阻止調用系統本身的瀏覽器,需要去實現WebViewClient類,然后重寫shouldOverrideUrlLoading()方法。下面是例子:

    public class WebViewActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        WebView wv = (WebView) findViewById(R.id.webview1);
                
        WebSettings webSettings = wv.getSettings();
        webSettings.setBuiltInZoomControls(true);

        wv.setWebViewClient(new Callback());
        wv.loadUrl("http://www.wrox.com");

    }
    
    private class Callback extends WebViewClient {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            return(false);
        }
    }

}
  
【Android 開發教程】WebView

這一次,就直接在WebView中加載指定的網址了。


另外,也可以動態地去實現一個HTML字符串,然后把它載入到WebView中,這要使用loadDataWithBaseURL()方法:

    		WebView wv = (WebView) findViewById(R.id.webview1);
        final String mimeType = "text/html";
        final String encoding = "UTF-8";
        String html = "<H1>A simple HTML page</H1><body>" +
            "<p>The quick brown fox jumps over the lazy dog</p></body>";
        wv.loadDataWithBaseURL("", html, mimeType, encoding, "");
  
【Android 開發教程】WebView


同樣的,如果在assets文件夾下面有一個HTML文件,也可以使用loadUrl()方法去把它加載到WebView中:

            WebView wv = (WebView) findViewById(R.id.webview1);
        wv.loadUrl("file:///android_asset/Index.html");
  
【Android 開發教程】WebView

加載html文件后的WebView:

【Android 開發教程】WebView





【Android 開發教程】WebView


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久er国产精品免费观看8 | 久久免费精品视频 | 国产精品免费播放 | 久久青草91线频免费观看 | 久久综合图区亚洲综合图区 | 久久草在线观看视频 | 毛片免费观看久久欧美 | 色视频欧美 | 亚洲国产精品久久 | 中文字幕日本不卡一二三区 | 国产精品亚洲第一区广西莫菁 | 国产精品久久久久久永久牛牛 | 国产精品成人不卡在线观看 | 亚欧成人一区二区 | 国产日韩欧美成人 | 黄色大全网站 | 高清不卡一区二区 | 天天爱天天舔 | 日韩高清毛片 | 欧美色老头oldvideos | 狠狠干夜夜骑 | 亚洲一区二区三区免费 | 伊人久久免费 | 九九热在线视频观看这里只有精品 | 国产在视频线在精品 | www.奇米.com | 天天躁狠狠躁夜夜躁 | 亚洲区欧美中文字幕久久 | 欧美一级毛片欧美一级无片 | 99视频在线观看免费视频 | 99视频在线播放 | 蜜桃精品免费久久久久影院 | 国产成人综合亚洲一区 | 久久香蕉国产线看观看8青草 | 免费观看男女羞羞的视频网站 | 国产精品亚洲综合第一区 | 98色花堂永久地址国产精品 | 夜色私人影院永久地址入口 | 四房婷婷在线视频播放 | 色婷婷视频在线 | 亚洲国产精品成人综合色在线婷婷 |