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

【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條評論
主站蜘蛛池模板: 久久久网久久久久合久久久久 | 四虎网站在线观看 | 天天草夜夜草 | 婷婷中文 | 99热这里有免费国产精品 | 亚洲国产高清一区二区三区 | 美女又黄又免费视频 | 综合亚洲一区二区三区 | 色综合天天综合网国产成人 | 亚洲一级片在线观看 | 国产亚洲第一精品社区麻豆 | 色综合h| 97狠狠干 | 一级毛片视频 | 精品久久久久久蜜臂a∨ | 国产综合在线观看 | 在线综合+亚洲+欧美中文字幕 | 99久久免费国产精精品 | 欧美国产成人在线 | 99热国产| 久久国产精品久久国产精品 | 欧美亚洲精品在线 | 欧美一级欧美三级 | 一本到视频在线观看 | 九九亚洲综合精品自拍 | 福利资源在线 | 九九精品视频在线免费观看 | 99久久亚洲综合精品网站 | 天天久久狠狠伊人第一麻豆 | 亚洲视频综合 | 毛片视 | 黄色一级免费网站 | ww欧美 | 亚洲欧洲尹人香蕉综合 | 一级a俄罗斯毛片免费 | 青青青草视频在线观看 | 久久国内精品自在自线观看 | 夜夜嗷| 国产桃花视频 | 婷婷精品 | 亚洲第一区第二区 |