Android編程 – WebView控制項基本使用方法

來源:互聯網
上載者:User

最近集中在看《Android程式設計》(北航出版社)的圖形使用者介面的相關章節,主要針對自己比較喜歡的UI領域關注一下Android的GUI基礎知識。

WebView控制項提供了一個內嵌的瀏覽器試圖,用於顯示本地的html或網路上的網頁。

第一步//main.xml

<WebView    android:id="@+id/html"    android:layout_width="fill_parent"    android:layout_height="280px"/> 

第二步.//主類.java

@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);WebView web = (WebView) findViewById(R.id.html);web.getSettings().setJavaScriptEnabled(true);//用於支援JavaScriptweb.loadUrl("http://www.baidu.com");//訪問外部網址

第三步.//AndroidManifest.xml

若無此行許可,則訪問外部網址時,將顯示網頁找不到,同理在寫Socket通訊的程式時也需要用到本許可

</application>    <uses-permission android:name="android.permission.INTERNET"/>

第四步.//主類.java

普通WebView控制項預設顯示的瀏覽器視圖並無網頁載入進度條或通告,在點擊第一個頁面的超連結後,系統會調用自身瀏覽器進程進行下一步網路訪問,這很不符合我們的編程和使用習慣,以下方法重寫可以自行定製其操作。

// 此方法可以處理webview 在載入時和載入完成時一些操作web.setWebChromeClient(new WebChromeClient() {@Overridepublic void onProgressChanged(WebView view, int newProgress) {if (newProgress == 100) { // 這裡是設定activity的標題,// 也可以根據自己的需求做一些其他的操作setTitle("載入完成");} else {setTitle("載入中.......");}}});web.setWebViewClient(new WebViewClient() {@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) { // 重寫此方法表明點擊網頁裡面的連結還是在當前的webview裡跳轉,不跳到瀏覽器那邊view.loadUrl(url);return true;}

要開學了,食堂教三主幹道,擦身而過的那些年輕面孔,就像兩年前的我們一樣稚嫩。

那個時候我還很天真,總是幻想著未來的無數可能性。

漸漸地,我們都知道了,任何一種可能性,都需要靠自己的努力去實現。

好的,壞的,全憑你自己。

 生活是什麼樣子,其實都是自己拿著畫筆一筆一筆畫出來的。

誰也不能許我一個美好的未來,但我自己可以。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.