導航:首頁 > 使用方法 > webview的使用方法

webview的使用方法

發布時間:2022-06-30 02:02:05

1. 安卓 webview怎麼使用,求高手

2. Android系統 WebView是什麼有什麼用

現在越來越多的APP都內置了Web網頁去載入視圖,也就是我們常說的Hybrid APP混合應用,市場上很多平台都是這樣做的,比如我們經常使用的淘寶、京東等電商平台。這些是如何實現的呢?在我們Android中有一個WebView組件,它就可以實現此類功能。它是Android中的原生UI控制項,主要用於在APP應用中方便地訪問遠程網頁或本地HTML資源,同時WebView也在Android中充當Java代碼和JS代碼之間交互的橋梁,實際上也可以將WebView看做一個功能最小化的瀏覽器。下面我們一起來看看WebView的一些常用的使用方法

WebView是Android系統提供的一個能顯示網頁的系統控制項,它是一個特殊的View,同時也是一個ViewGroup,可以有很多其他子View。在Android 4.4以下(不包含4.4)系統WebView底層實現是採用WebKit內核,而在Android 4.4及其以上Google採用了Chromium內核作為系統WebView的底層內核支持。在這一變化中Android提供的WebView相關API並沒有發生較大變化,在4.4上也兼容低版本的API並且引進了少部分API。這里簡單介紹下基於Chromium的WebView和基於WebKit的WebView之間的差異,基於Chromium的Webview提供了更廣的HTML5、CSS3、JavaScript支持,在Android系統版本5.0上基於Chromium 37,WebView提供了絕大多數的HTML5特性支持,除此之外Chromium也支持遠程調試(Chrome DevTools)。WebKit JavaScript引起採用WebCore JavaScript在Android 4.4上換成了V8能直接提升JavaScript性能。

二、作用
1、顯示和渲染Web頁面
2、使用html文件(網路上或本地assets中)作為布局
3、可與JavaScript交互調用
註: WebView控制項功能強大,除了具有一般View的屬性和設置外,還可以對Url請求、頁面載入、渲染、頁面交互進行強大的處理。

3. 超鏈接跳轉到底應該怎麼用上webview

/**
*通用的webview,只需要傳入2個參數即可,param1:title標題param2:url網站
*

*
*/


{
privateWebViewwebview;
privateImageButtonback;
privateLinearLayoutpublic_webview_top;
privatebooleanshowTitle;
privateProgressBarprogressBar;


@SuppressLint(JavascriptInterface)
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);


setContentView(R.layout.public_webview);


Intentintent=getIntent();
Stringurl=intent.getStringExtra(url);
Stringtitle=intent.getStringExtra(title);
showTitle=intent.getBooleanExtra(show_title,true);


public_webview_top=(LinearLayout)findViewById(R.id.public_webview_top);
if(showTitle){
public_webview_top.setVisibility(View.VISIBLE);
}else{
public_webview_top.setVisibility(View.GONE);
}
TextViewtitletv=(TextView)findViewById(R.id.public_webview_title);
titletv.setText(title);


progressBar=(ProgressBar)findViewById(R.id.public_webview_progressbar);


webview=(WebView)findViewById(R.id.public_webview_webview);
//載入需要顯示的網頁
webview.addJavascriptInterface(newJavascriptInterface(PublicWebView.this),Phoenix_Android);


webview.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
//設置WebView屬性,能夠執行Javascript腳本
webview.getSettings().setJavaScriptEnabled(true);
//載入需要顯示的網頁
webview.loadUrl(url);
//設置Web視圖
webview.setWebViewClient(newMyWebViewClient());
webview.setWebChromeClient(newWebChromeClient(){
@Override
publicvoidonProgressChanged(WebViewview,intnewProgress){
if(newProgress==100){
progressBar.setVisibility(View.GONE);
}else{
progressBar.setVisibility(View.VISIBLE);
}
super.onProgressChanged(view,newProgress);
}
});


back=(ImageButton)findViewById(R.id.public_webview_back);
back.setOnClickListener(newBackListener(PublicWebView.this,null,1));


}


@SuppressLint(NewApi)
{
@SuppressWarnings(unused)
privateContextcontext;


publicJavascriptInterface(Contextcontext){
this.context=context;
}


publicvoidback(Stringmole,intstatus,Stringplace){
reFreshBlance();


if(status==-1){//用戶取消了
return;
}elseif(status==0){
Toast.makeText(PublicWebView.this,充值請求失敗,請稍後重試...,Toast.LENGTH_SHORT).show();
return;
}elseif(status==1){
//充值請求成功
reFreshBlance();
//1.用戶中心進來的有兩個參數
//a.bet參數是返回購彩界面
//b.userCenter返回用戶中心


}
}
}


//監聽所有點擊的鏈接,如果攔截到我們需要的,就跳轉到相對應的頁面。
{
@Override
(WebViewview,Stringurl){
System.out.println(----------------------shouldOverrideUrlLoading。。url:+url);


if(url!=null&&url.contains(/m/phoneRegiste.do)){
Intentintent=newIntent(PublicWebView.this,RegisterByPhone.class);
PublicWebView.this.startActivity(intent);

finish();
returntrue;
}


returnsuper.shouldOverrideUrlLoading(view,url);
}


@Override
publicvoidonPageFinished(WebViewview,Stringurl){
view.getSettings().setJavaScriptEnabled(true);
super.onPageFinished(view,url);


}
}

//覆蓋Activity類的onKeyDown(intkeyCoder,KeyEventevent)方法
publicbooleanonKeyDown(intkeyCode,KeyEventevent){
if(keyCode==KeyEvent.KEYCODE_BACK&&webview.canGoBack()){
//webview.goBack();//返回前一個頁面
finish();
returntrue;
}
returnsuper.onKeyDown(keyCode,event);
}
}

4. webview是什麼

Webview含義:WebView也就是我們熟悉的「網路視圖」,能載入並顯示網頁,可以將其視為一個瀏覽器。主要用於展示網路請求後的內容,就是將網路地址請求的內容展示在裡面。

使用場景:比如你自己寫個APP,想要訪問網路(如網路頁面),可以不使用手機自帶的瀏覽器,只需APP內部展示網路頁面,這時候就可以用webView。

(4)webview的使用方法擴展閱讀:

  1. WebView的作用:

1.1顯示、渲染請求的Web頁面;

1.2對展示的html文件進行布局;

1.3與JavaScript相互調用。

2.實現WebView的方法:

2.1直接在Activity中實例化所需要的WebView組件嗎,如:WebView webView = new WebView(this);

2.2使用WebView的loadUrl方法,設置WebView初始要載入的頁面:訪問互聯網使用:webView.loadUrl("http://www..com"); 訪問本地文件使用:webView.loadUrl("本地地址"); 本地文件一般存放在:assets 文件夾中

2.3使用Activity的setContentView方法來展示網頁視圖

2.4需要在AndroidManifest.xml文件中添加需要用到的許可權,否則會出現Web page not available的錯誤。添加方法:
<uses-permission android:name="android.permission.INTERNET" />

5. android webview怎麼用

Android和iOS系統都提供了標準的瀏覽器控制項,在android中是WebView,ios中為UIWebView。在iOS中你實例化一個UIWebView即可調用loadRequest來載入一個網頁,但是在Android中你不僅需要創建一個WebView,還需要做一些其他的事情,建議初次使用WebView的讀者按照以下步驟使用:
(1)在要實現WebView的XML中添加一個WebView,並按照自己的要求進行排版,如下:

<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"

android:layout_gravity="center">

6. 如何使用webview載入網頁

//實例化WebView對象
webview
=
new
WebView(this);
//設置WebView屬性,能夠執行Javascript腳本
webview.getSettings().setJavaScriptEnabled(true);
//載入需要顯示的網頁
webview.loadUrl("
http://www.51cto.com/"
);
//設置Web視圖
setContentView(webview);

7. 要使用webview如何操作

您好,webview中要打開的頁面需要設置白名單,到用戶後台,進入開發設置中,將網站域名加入到配置中。

8. 安卓如何使用WebView組件載入HTML代碼

1)修改新建項目的resIayout目錄下的布局文件main.xml,將默認添加的TextView組件刪除,然後添加一個WebView組件

2)在MainActivity的onCreate()方法中,首先獲取布局管理器中添加的Web View組件,然後創建一個字元串構建器,將要顯示的HTML代碼放置在該構建器中,最後應用IoadDataWithBaseURLO方法載入構建器中的HTML代碼

android客戶端常會調用到html頁面,給webview頁面適配android凌亂的設備帶來很大的困難。

可以找到的方法是通過ZoomDensity.setDefaultZoom根據解析度480寬度為基準縮放。

不過ZoomDensity.setDefaultZoom在2.0以下的平台是無法調用的,需要自己反射調用。

即使是ZoomDensity.setDefaultZoom設置了縮放,但還是會在很多設備無效。經過摸索還需做一些修改:

1,頁面head添加

<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />


2,設置字體也按480基準縮放。

下面是代碼:

Java代碼

privatevoidsetZoom(WebSettingswebSettings){intscreenDensity=getResources().getDisplayMetrics().densityDpi;Stringzd="FAR";switch(screenDensity){caseDisplayMetrics.DENSITY_LOW:zd="CLOSE";break;caseDisplayMetrics.DENSITY_MEDIUM:zd="MEDIUM";break;}Class<?>zoomDensityClass=null;Enum<?>zoomDensity=null;try{if(zoomDensityClass==null){zoomDensityClass=Class.forName("android.webkit.WebSettings$ZoomDensity");}if(zoomDensity==null){zoomDensity=(Enum<?>)Enum.valueOf((Class)zoomDensityClass,zd);}Methodmethod=WebSettings.class.getDeclaredMethod("setDefaultZoom",newClass<?>[]{zoomDensityClass});if(method!=null){method.invoke(webSettings,zoomDensity);}method=WebSettings.class.getDeclaredMethod("setTextZoom",newClass<?>[]{int.class});if(method!=null){method.invoke(webSettings,100*getWindowManager().getDefaultDisplay().getWidth()/480);}}catch(Exceptione){Log.e(TAG,e.getMessage());return;}}




Android的webview載入本地html、本apk內html和遠程URL

Android的webview載入本地html、本apk內html和遠程URL

android客戶端常會調用到html頁面,給webview頁面適配android凌亂的設備帶來很大的困難。

可以找到的方法是通過ZoomDensity.setDefaultZoom根據解析度480寬度為基準縮放。

不過ZoomDensity.setDefaultZoom在2.0以下的平台是無法調用的,需要自己反射調用。

即使是ZoomDensity.setDefaultZoom設置了縮放,但還是會在很多設備無效。經過摸索還需做一些修改:

1,頁面head添加

<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />


2,設置字體也按480基準縮放。

下面是代碼:

Java代碼

privatevoidsetZoom(WebSettingswebSettings){intscreenDensity=getResources().getDisplayMetrics().densityDpi;Stringzd="FAR";switch(screenDensity){caseDisplayMetrics.DENSITY_LOW:zd="CLOSE";break;caseDisplayMetrics.DENSITY_MEDIUM:zd="MEDIUM";break;}Class<?>zoomDensityClass=null;Enum<?>zoomDensity=null;try{if(zoomDensityClass==null){zoomDensityClass=Class.forName("android.webkit.WebSettings$ZoomDensity");}if(zoomDensity==null){zoomDensity=(Enum<?>)Enum.valueOf((Class)zoomDensityClass,zd);}Methodmethod=WebSettings.class.getDeclaredMethod("setDefaultZoom",newClass<?>[]{zoomDensityClass});if(method!=null){method.invoke(webSettings,zoomDensity);}method=WebSettings.class.getDeclaredMethod("setTextZoom",newClass<?>[]{int.class});if(method!=null){method.invoke(webSettings,100*getWindowManager().getDefaultDisplay().getWidth()/480);}}catch(Exceptione){Log.e(TAG,e.getMessage());return;}}

9. android6.0 webview js怎麼使用

WebView(網路視圖)能載入顯示網頁,可以將其視為一個瀏覽器。它使用了WebKit渲染引擎載入顯示網頁,實現WebView有以下兩種不同的方法:
第一種方法的步驟:
1.在要Activity中實例化WebView組件:WebView webView = new WebView(this);
2.調用WebView的loadUrl()方法,設置WevView要顯示的網頁:
互聯網用:webView.loadUrl("http://www.google.com");
本地文件用:webView.loadUrl("file:///android_asset/XX.html"); 本地文件存放在:assets 文件中
3.調用Activity的setContentView( )方法來顯示網頁視圖
4.用WebView點鏈接看了很多頁以後為了讓WebView支持回退功能,需要覆蓋覆蓋Activity類的onKeyDown()方法,如果不做任何處理,點擊系統回退剪鍵,整個瀏覽器會調用finish()而結束自身,而不是回退到上一頁面
5.需要在AndroidManifest.xml文件中添加許可權,否則會出現Web page not available錯誤。
<uses-permission android:name="android.permission.INTERNET" />

第二種方法的步驟:
1、在布局文件中聲明WebView
2、在Activity中實例化WebView
3、調用WebView的loadUrl( )方法,設置WevView要顯示的網頁
4、為了讓WebView能夠響應超鏈接功能,調用setWebViewClient( )方法,設置 WebView視圖
5、用WebView點鏈接看了很多頁以後為了讓WebView支持回退功能,需要覆蓋覆蓋Activity類的onKeyDown()方法,如果不做任何處理,點擊系統回退剪鍵,整個瀏覽器會調用finish()而結束自身,而不是回退到上一頁面
6、需要在AndroidManifest.xml文件中添加許可權,否則出現Web page not available錯誤。
<uses-permission android:name="android.permission.INTERNET"/>

閱讀全文

與webview的使用方法相關的資料

熱點內容
床單潮濕解決方法 瀏覽:880
氰的檢測計算方法 瀏覽:423
腰包快速疏通的方法 瀏覽:422
98減18乘5加25用簡便方法 瀏覽:312
鋁鎂合金移門安裝方法 瀏覽:180
有治療疫情的方法嗎 瀏覽:364
羊飼料種植方法 瀏覽:347
艾尚麗牌多種維生素片的食用方法 瀏覽:563
我國工業物流的問題的解決方法 瀏覽:392
西餐的使用方法視頻 瀏覽:514
材料分析方法的總復習 瀏覽:153
器材鍛煉肌肉最快的方法 瀏覽:986
檢查皮膚癬菌用什麼染色方法 瀏覽:204
喜糖伴手禮連接方法 瀏覽:675
問題討論教學方法的合理性 瀏覽:678
除數豎式的簡便方法 瀏覽:733
後座墊套座套安裝方法 瀏覽:538
社會研究方法教程考點 瀏覽:857
二保焊的焊接方法和技巧圖解 瀏覽:497
工廠生產麵包的製作方法和步驟 瀏覽:677