日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > php >内容正文

php

php webview,Android:控件WebView显示网页 – tinyphp – 博客园

發(fā)布時(shí)間:2024/7/5 php 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php webview,Android:控件WebView显示网页 – tinyphp – 博客园 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

WebView可以使得網(wǎng)頁(yè)輕松的內(nèi)嵌到app里,還可以直接跟js相互調(diào)用。

webview有兩個(gè)方法:setWebChromeClient 和 setWebClient

setWebClient:主要處理解析,渲染網(wǎng)頁(yè)等瀏覽器做的事情

setWebChromeClient:輔助WebView處理Javascript的對(duì)話框,網(wǎng)站圖標(biāo),網(wǎng)站title,加載進(jìn)度等

WebViewClient就是幫助WebView處理各種通知、請(qǐng)求事件的。

在AndroidManifest.xml設(shè)置訪問(wèn)網(wǎng)絡(luò)權(quán)限:

控件:

android:layout_width=”match_parent”

android:layout_height=”match_parent”

android:id=”@+id/webView”

/>

用途一:加載本地/Web資源

example.html 存放在assets文件夾內(nèi)

調(diào)用WebView的loadUrl()方法,

加載本地資源

webView = (WebView) findViewById(R.id.webView);

webView.loadUrl(“file:///android_asset/example.html”);

加載web資源:

webView = (WebView) findViewById(R.id.webView);

webView.loadUrl(“http://baidu.com”);

用途二:在程序內(nèi)打開(kāi)網(wǎng)頁(yè)

創(chuàng)建一個(gè)自己的WebViewClient,通過(guò)setWebViewClient關(guān)聯(lián)

package com.example.testopen;

importandroid.app.Activity;

importandroid.os.Bundle;

importandroid.webkit.WebView;

importandroid.webkit.WebViewClient;

public class MainActivity extendsActivity {

privateWebView webView;

@Override

protected voidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.test);

init();

}

private voidinit(){

webView =(WebView) findViewById(R.id.webView);

//WebView加載web資源

webView.loadUrl(“http://baidu.com”);

//覆蓋WebView默認(rèn)使用第三方或系統(tǒng)默認(rèn)瀏覽器打開(kāi)網(wǎng)頁(yè)的行為,使網(wǎng)頁(yè)用WebView打開(kāi)

webView.setWebViewClient(newWebViewClient(){

@Override

public booleanshouldOverrideUrlLoading(WebView view, String url) {

//TODO Auto-generated method stub

//返回值是true的時(shí)候控制去WebView打開(kāi),為false調(diào)用系統(tǒng)瀏覽器或第三方瀏覽器

view.loadUrl(url);

return true;

}

});

}

}

用途三:

如果訪問(wèn)的頁(yè)面中有Javascript,則webview必須設(shè)置支持Javascript

//啟用支持javascript

WebSettings settings =webView.getSettings();

settings.setJavaScriptEnabled(true);

用途四:

如果希望瀏覽的網(wǎng)頁(yè)后退而不是退出瀏覽器,需要WebView覆蓋URL加載,讓它自動(dòng)生成歷史訪問(wèn)記錄,那樣就可以通過(guò)前進(jìn)或后退訪問(wèn)已訪問(wèn)過(guò)的站點(diǎn)。

//改寫(xiě)物理按鍵——返回的邏輯

@Override

public boolean onKeyDown(intkeyCode, KeyEvent event) {

//TODO Auto-generated method stub

if(keyCode==KeyEvent.KEYCODE_BACK)

{

if(webView.canGoBack())

{

webView.goBack();//返回上一頁(yè)面

return true;

}

else

{

System.exit(0);//退出程序

}

}

return super.onKeyDown(keyCode, event);

}

用途五:判斷頁(yè)面加載過(guò)程

webView.setWebChromeClient(new WebChromeClient() {

@Override

public void onProgressChanged(WebView view, intnewProgress) {

//TODO Auto-generated method stub

if (newProgress == 100) {

//網(wǎng)頁(yè)加載完成

} else{

//加載中

}

}

});

用途六:緩存的使用

優(yōu)先使用緩存

webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);

不使用緩存:

webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);

總結(jié)

以上是生活随笔為你收集整理的php webview,Android:控件WebView显示网页 – tinyphp – 博客园的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。