[android]_[webView]

本文介绍如何在Android应用中使用WebView控件显示网页内容。主要内容包括配置WebView的基本设置、支持JavaScript及网页跳转处理等。通过示例代码展示了如何初始化WebView并加载指定URL。

webView控件式用来显示网页的,用法比较简单。

activity_main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:layout_width="match_parent"
	android:layout_height="match_parent" >
	<WebView
		android:id="@+id/web_view"
		android:layout_width="match_parent"
		android:layout_height="match_parent" />
</LinearLayout>

MainActivity:

public class MainActivity extends Activity {
private WebView webView;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
	super.onCreate(savedInstanceState);
	setContentView(R.layout.activity_main);
	webView = (WebView) findViewById(R.id.web_view);
	webView.getSettings().setJavaScriptEnabled(true);
	webView.setWebViewClient(new WebViewClient() {
	@Override
	public boolean shouldOverrideUrlLoading(WebView view, Stringurl) {
			view.loadUrl(url); // 根据传入的参数再去加载新的网页
			return true; // 表示当前WebView可以处理打开新网页的请求,不用借助		
		}
		});
		webView.loadUrl("http://www.baidu.com");
	}
}

MainActivity 中的代码也很短,首先使用findViewById()方法获取到了WebView 的实例,然后调用WebView 的getSettings()方法可以去设置一些浏览器的属性,这里我们并不去设置过多的属性,只是调用了setJavaScriptEnabled()方法来让WebView 支持JavaScript 脚本。接下来是非常重要的一个部分,我们调用了WebView 的setWebViewClient()方法,并传入了WebViewClient 的匿名类作为参数,然后重写了shouldOverrideUrlLoading()方法。这就表明当需要从一个网页跳转到另一个网页时,我们希望目标网页仍然在当前WebView 中显示,而不是打开系统浏览器。
最后一步就非常简单了,调用WebView 的loadUrl()方法,并将网址传入,即可展示相应网页的内容.

注意要在AndroidManifest.xml文件中添加

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


Package: com.gzrcb.mobilebank v738 (7.3.8) Foreground: No Build: OPPO/PKB110/OP5A3DL1:16/BP2A.250605.015/V.1b252e5_42d75c_42d779:user/release-keys java.lang.RuntimeException: Using WebView from more than one process at once with the same data directory is not supported. https://crbug.com/558377 : Current process com.gzrcb.mobilebank:remote (pid 26226), lock owner com.gzrcb.mobilebank (pid 25798) at org.chromium.android_webview.AwDataDirLock.b(chromium-TrichromeWebViewGoogle6432.aab-stable-699813533:190) at org.chromium.android_webview.AwBrowserProcess.g(chromium-TrichromeWebViewGoogle6432.aab-stable-699813533:16) at com.android.webview.chromium.N.g(chromium-TrichromeWebViewGoogle6432.aab-stable-699813533:239) at com.android.webview.chromium.N.c(chromium-TrichromeWebViewGoogle6432.aab-stable-699813533:68) at com.android.webview.chromium.N.b(chromium-TrichromeWebViewGoogle6432.aab-stable-699813533:1) at com.android.webview.chromium.N.j(chromium-TrichromeWebViewGoogle6432.aab-stable-699813533:5) at com.android.webview.chromium.WebViewChromiumFactoryProvider.m(chromium-TrichromeWebViewGoogle6432.aab-stable-699813533:8) at com.android.webview.chromium.WebViewChromium.init(chromium-TrichromeWebViewGoogle6432.aab-stable-699813533:97) at android.webkit.WebView.<init>(WebView.java:455) at android.webkit.WebView.<init>(WebView.java:370) at android.webkit.WebView.<init>(WebView.java:352) at android.webkit.WebView.<init>(WebView.java:339) at android.webkit.WebView.<init>(WebView.java:329) at com.xindun.sdk.webview.WebViewIsSupportUtil.getWebView(WebViewIsSupportUtil.java:1) at com.xindun.sdk.webview.WebViewIsSupportUtil.testWebViewSupportFormDataParse(WebViewIsSupportUtil.java:2) at com.xindun.sdk.TrusfortGMManager.a(TrusfortGMManager.java:1) at com.xindun.sdk.TrusfortGMManager.b(Unknown Source:0) at com.xindun.sdk.a.run(Unknown Source:2) at android.os.Handler.handleCallback(Handler.java:1027) at android.os.Handler.dispatchMessage(Handler.java:108) at android.os.Looper.loopOnce(Looper.java:298) at android.os.Looper.loop(Looper.java:408) at android.app.ActivityThread.main(ActivityThread.java:9952) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:613) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1074)
08-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值