`

玩转Android---UI篇---WebView(网络视图)

阅读更多

Android网路功能很强大,WebView组件支持直接加载网页,可以将其视为一个浏览器,要实现该功能,具体步骤如下

 

1、在布局文件中声明WebView

2、在Activity中实例化WebView

3、调用WebView的loadUrl()方法,加载指定的URL地址网页

4、为了让WebView能够响应超链接功能,调用setWebViewClient()方法,设置WebView客户端

5、为了让WebView支持回退功能,覆盖onKeyDown()方法

6、一定要注意:在AndroidManifest.xml文件中添加访问互联网的权限,否则不能显示

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

 

WebViewTest.java

/*
 * @author hualang
 */
package org.hualang.webview;

import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class WebViewTest extends Activity {
    /** Called when the activity is first created. */
	private WebView webview;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        webview=(WebView)findViewById(R.id.webview);
        //设置WebView属性,能够执行JavaScript脚本
        webview.getSettings().setJavaScriptEnabled(true);
        //加载URL内容
        webview.loadUrl("http://www.baidu.com");
        //设置web视图客户端
        webview.setWebViewClient(new MyWebViewClient());
    }
    //设置回退
    public boolean onKeyDown(int keyCode,KeyEvent event)
    {
    	if((keyCode==KeyEvent.KEYCODE_BACK)&&webview.canGoBack())
    	{
    		webview.goBack();
    		return true;
    	}
    	return super.onKeyDown(keyCode,event);
    }
    //web视图客户端
    public class MyWebViewClient extends WebViewClient
    {
    	public boolean shouldOverviewUrlLoading(WebView view,String url)
    	{
    		view.loadUrl(url);
    		return true;
    	}
    }
}

 

main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<WebView
	android:id="@+id/webview"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
/>
</LinearLayout>

 

 

运行结果如下:



 

  • 大小: 18.9 KB
分享到:
评论
1 楼 mvpstevenlin 2012-04-21  
谢谢LZ分享,有个问题这个webview在模拟器中为什么不能响应键盘的回车键打开超链接?

相关推荐

    android-system-webview-7703.apk

    Android8.0以下手机自带的android-system-webview版本过低使用

    Android---UI篇

    •Android---UI篇---WebView(网络视图) • •Andorid---UI篇---两种进度条(ProgressBar) • •Android---UI篇---Dialog(对话框) • •Android---UI篇---AutoCompleteTextView(自动提示) • •Android---UI篇...

    Android代码-Android-X5WebView基本封装

    Android-X5WebView基本封装和使用 通过OkHttp拦截器、自定义CookieJar有效完成客户端与H5端的Cookie同步管理 监听WebView的加载进度 滚动条的设置(隐藏或者显示,内侧显示还是外侧显示) 优化X5WebView的预加载问题...

    php-android-webview

    【标题】"php-android-webview" 涉及的关键技术主要集中在PHP、Android以及Webview这三个领域。PHP是一种广泛使用的服务器端脚本语言,尤其在Web开发中占据主导地位;Android是Google主导的开源移动操作系统,广泛...

    xamarin-android-webview-upload.7z

    在这个特定的案例中,"xamarin-android-webview-upload.7z" 压缩包文件包含了一个关于如何在 Xamarin Android 应用中使用 Web 视图(WebView)进行图片上传的示例项目。以下将详细解释这个知识点。 1. **Xamarin ...

    Android-WebSocket-WebView_DEMO_websocket_androidwebview_

    在本DEMO中,"Android-WebSocket-WebView"着重展示了如何在Android应用中集成WebSocket功能,并利用WebView加载网页,实现客户端与服务器的实时交互。这个项目对于理解WebSocket与Android WebView的结合使用具有重要...

    react-native-android-fullscreen-webview:在Android上支持全屏视频的React Native WebView组件

    react-native-android-fullscreen-webview 概述 默认情况下,React Native随附的WebView组件无法显示全屏。 该软件包实质上复制了现有的Android版WebView,并添加了一些额外的功能来启用全屏视频。 iOS默认情况下...

    crosswalk-webview比webview更好用

    在实际开发中,你可以通过引入`crosswalk-webview-14.43.343.23-arm`这样的库文件,将Crosswalk-WebView集成到Android项目中。这个特定版本是针对ARM架构的设备,包含了特定版本的Crosswalk-WebView,确保在相应设备...

    Android-webview模拟原生页面切换效果

    在开发中,有时候我们会在app中使用WebView加载一个web页面。这样可以适当减轻我们开发的难度。但是弊端是WebView中切换html,没有像原生页面的切换效果。这里我们就利用动画,以及 获取网页的快照来实现android ...

    react-native-android-webview-change

    react-native-android-webview解决React Native自带的WebView组件Android不能拦截URL的问题安装npm install react-native-android-webview --save 本机库链接安卓android/settings.gradle添加到android/settings....

    unity-webview-integration-master.zip

    首先,Unity-webview-integration-master项目是一个针对Unity的WebView插件,它允许Unity应用在Android平台上加载和显示Web内容。这个项目的核心是将一个Android原生的WebView组件与Unity的游戏逻辑相结合,使得用户...

    com.android.webview-95.0.4638.50

    标题中的"com.android.webview-95.0.4638.50"指的是Android系统中的一个关键组件,即WebView。WebView是一个内置的浏览器引擎,允许Android应用程序(App)在不离开应用的情况下显示网页内容。它相当于一个轻量级的...

    Android-----WebView使用

    ### Android中的WebView组件详解 #### 一、WebView概述与特性 WebView是Android SDK中的一个重要组件,它基于WebKit渲染引擎,允许在应用内部加载和显示网页。WebKit最初是苹果公司在KDE的KHTML基础上开发的,其...

    Android-android端通用WebView

    这个“Android-android端通用WebView”项目可能是为了提供一个可复用的、功能丰富的WebView组件,方便开发者快速集成到自己的应用中。下面我们将详细探讨WebView的相关知识点。 1. **WebView的基本使用**: - `...

    Android-为了修复ReactNative的WebView组件在安卓端不支持文件上传而包装的一个Webview组件

    6. **源码分析**:在提供的压缩包文件名"react-native-webview-for-android-master"中,我们可以推测这可能是项目的源代码仓库。通过查看源码,我们可以学习如何实现这个自定义WebView组件,包括如何监听事件、如何...

    react-native-webview.zip

    WebView组件是React Native的一个重要组成部分,它是Android和iOS系统内置的浏览器引擎,用于显示网页内容。React Native WebView库就是对这个原生组件的封装,提供了更方便的API和生命周期管理,使开发者可以在...

    Android-webview缓存

    总结,Android的Webview缓存机制是提高用户体验的关键,正确配置和管理缓存可以显著减少网络请求,加快页面加载速度。通过上述知识点,开发者可以根据具体需求定制Webview的缓存行为,为用户提供更加流畅的浏览体验...

    解决React-Native的WebView不支持Android选择图片和拍照

    然而,由于React Native的WebView组件与原生Android系统的交互限制,有时会出现无法从Android设备的相册或相机选择图片并上传的问题。这个问题可能会导致用户体验下降,因为用户无法充分利用手机的功能。本文将深入...

    Android-WebView与Html交互

    本篇文章将深入探讨如何在Android应用中使用WebView加载HTML,并实现WebView与Html的交互。 首先,我们需要在布局XML文件中添加WebView组件。例如: ```xml &lt;WebView android:id="@+id/webView" android:layout_...

    鸿蒙javaUI-webview-demo.rar

    "鸿蒙javaUI-webview-demo.rar"这个压缩包就是一个关于如何在鸿蒙平台上使用WebView进行远程连接并实现JavaScript交互的示例项目。下面我们将详细探讨相关的知识点。 1. **鸿蒙SDK**: 鸿蒙SDK是华为推出的用于...

Global site tag (gtag.js) - Google Analytics