`
1320438999
  • 浏览: 127517 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Android WebView学习笔记

 
阅读更多
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" />

下面是具体例子:
package com.android.webview.activity; 
 
import android.app.Activity; 
import android.os.Bundle; 
import android.view.KeyEvent; 
import android.webkit.WebView; 
 
public class MainActivity extends Activity { 
    private WebView webview; 
    @Override
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        //实例化WebView对象 
        webview = new WebView(this); 
        //设置WebView属性,能够执行Javascript脚本 
        webview.getSettings().setJavaScriptEnabled(true); 
        //加载需要显示的网页 
        webview.loadUrl("http://www.51cto.com/"); 
        //设置Web视图 
        setContentView(webview); 
    } 
     
    @Override
    //设置回退 
    //覆盖Activity类的onKeyDown(int keyCoder,KeyEvent event)方法 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
        if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack()) { 
            webview.goBack(); //goBack()表示返回WebView的上一页面 
            return true; 
        } 
        return false; 
}

在AndroidManifest.xml文件中的17行添加权限
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.android.webview.activity"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-sdk android:minSdkVersion="10" />
 
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".MainActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
    <uses-permission android:name="android.permission.INTERNET"/>
</manifest>



分享到:
评论

相关推荐

    Android开发学习笔记 浅谈WebView

    第一种方法的步骤: ... 本地文件用:webView.loadUrl(“file:///android_asset/XX.html”); 本地文件存放在:assets 文件中 3.调用Activity的setContentView( )方法来显示网页视图 4.用WebView点链接看了很多页以

    Android 学习笔记(1)--永远不变的Hello World

    【Android 学习笔记(1)--永远不变的Hello World】 Android 开发是移动应用开发领域的重要组成部分,尤其对于新手而言,"Hello, World!" 是入门的起点。在这个学习笔记中,我们将探讨如何创建第一个简单的 Android...

    Android学习笔记——Http通信 源码

    总的来说,这篇学习笔记涵盖了Android应用中网络通信的基础知识,包括使用WebView加载网页以及借助ImageView和第三方库加载网络图片。理解并熟练掌握这些内容,对于进行Android应用开发至关重要,它能帮助开发者构建...

    MarkdownView-Android,markdownview是一个android的webview,它可以加载markdown文本或文件并显示为html,扩展了android的webview。.zip

    MarkdownView-Android 是一个专为 Android 设计的开源项目,其主要目的是在移动平台上提供一个WebView组件,能够解析和渲染Markdown格式的文本或文件,并将其转化为美观易读的HTML页面。这个项目扩展了Android原生的...

    Android学习笔记(十八)——使用意图筛选器和实现浏览网页(附源码)

    总结,这篇学习笔记详细介绍了如何在Android应用中使用意图筛选器来处理隐式Intent,以及如何利用WebView组件来实现浏览网页的功能。通过源码,开发者可以更好地理解这两个概念,并在实际项目中进行实践。理解并掌握...

    Android学习笔记

    这份"Android学习笔记"提供了深入学习Android开发的基础知识和实践经验。以下是对标题、描述及标签所涉及知识点的详细说明: 1. **Android**: 它是由Google主导的开放源代码项目,基于Linux内核。Android系统提供了...

    Android学习笔记(二九):嵌入浏览器.doc

    在Android开发中,嵌入浏览器功能通常通过使用WebView组件来实现。WebView是一个能够加载和显示网页的视图,允许开发者在应用程序内部呈现互联网内容。在本文中,我们将深入探讨如何在Android应用中使用WebView及其...

    Android 学习实例整合

    "Android学习实例整合"是一个集合了多种功能模块的项目,旨在帮助开发者深入理解Android应用程序的构建过程。以下是这个项目涉及的一些核心知识点: 1. **音乐播放**:在Android中实现音乐播放,通常会用到`...

    Android大作业.zip

    这个项目可能是一个学生的大作业,用于展示他们在Android开发中的学习成果。从描述中我们可以推测,这个作业涉及到多个HTML文件、CSS样式表以及JavaScript脚本,这些都是构建交互式Web界面的关键元素。 首先,我们...

    android pdf demo

    例如,可以使用Android的WebView加载PDF.js来实现一个简单的PDF查看器,或者使用更专业的库来提供更丰富的功能,如注释、书签和搜索等。 3. **PDF文件的加载**:加载PDF文件通常有两种方式,一是从本地存储中读取,...

    android安卓笔记

    ### Android 安卓笔记知识点详解 #### Android—基础 ##### 基础—概念 - **控件类之父**:`View`是所有控件的基类,无论是简单的按钮还是复杂的列表视图,都是从这个类派生出来的。 - **基准线**:在英文书写中,...

    Android开发自学笔记(五):使用代码控制界面

    在本篇自学笔记中,我们将学习如何通过代码来操控UI元素,让应用具有实际的功能。在前面的教程中,我们已经搭建了一个美观的布局,现在我们将进一步添加代码,使其能够响应用户的操作。 首先,为了展示搜索结果,...

    Android文本阅读器源代码.rar

    《深入解析Android文本阅读器源代码》 在移动设备领域,Android系统...通过深入研究这些源代码,开发者不仅可以学习到具体的编程技巧,还能提升对Android系统架构和组件的理解,从而更好地设计和实现自己的应用程序。

    cocos2dx_lua开发笔记

    【cocos2dx_lua开发笔记】是一篇个人实践总结,主要涵盖了使用cocos2dx_lua进行游戏开发的一些关键点,包括...通过学习和理解这些笔记,开发者能够更好地理解和运用cocos2dx_lua进行游戏场景、UI元素和动画效果的构建。

    android Mi-Notes源码.rar

    Mi_Notes是一款由小米公司开发的安卓平台上的笔记应用,其源码对于我们深入理解Android应用开发有着极高的学习价值。本文将围绕Mi_Notes的源码展开,深入剖析其核心功能实现、架构设计以及关键算法,旨在帮助开发者...

    Android课程实验-线性布局实验-限制布局实验-表格布局实验-自制的浏览器.zip

    Android的SQLite数据库用于本地数据存储,实验可能包括创建数据库表、插入、查询和更新笔记数据。 7. **LayoutTest**:与layoutTest2和layoutTest3类似,这可能是另一个布局实验,但可能更深入,可能会涵盖相对布局...

    Android电子书阅读器.zip

    对于PDF,可以利用PDF.js库进行渲染,将其嵌入到WebView中显示。渲染时要注意文字排版、图片加载以及页面适应性。 四、本地存储与云同步 电子书阅读器需要管理用户的书籍收藏和阅读进度。Android提供了SQLite数据库...

Global site tag (gtag.js) - Google Analytics