有时候我们需要在加载webview时,获取加载完成的内容,当然,WebView也是有可能包含javascript。通过以下操作,我们是可以获取到WebView加载的内容。

1、自定义一个内部类,获取WebView加载的内容

class Handler {

public void show(String data) { // 这里的data就webview加载的内容,即使页面跳转页都可以获取到,这样就可以做自己的处理了

new AlertDialog.Builder(WebViewActivity.this).setMessage(data).create().show();

}

}

2、webview关键代码

// web页面处理

webpage.getSettings().setJavaScriptEnabled(true);// 支持javascript

webpage.addJavascriptInterface(new Handler(), "handler"); // 相当于在网页的js中增加一个handler类,实现java与WebView的js交互

webpage.loadUrl(webpage_url);

webpage.setWebViewClient(new WebViewClient() {

// 依然在webview打开新页面

public boolean shouldOverrideUrlLoading(WebView view, String url) {

view.loadUrl(url);

return true;

}

@Override

public boolean shouldOverrideKeyEvent(WebView view, KeyEvent event) {

return super.shouldOverrideKeyEvent(view, event);

}

@Override

public void onPageStarted(WebView view, String url, Bitmap favicon) {

super.onPageStarted(view, url, favicon);

}

@Override

public void onPageFinished(WebView view, String url) {

// 通过内部类定义的方法获取html页面加载的内容,这个需要添加在webview加载完成后的回调中

view.loadUrl("javascript:window.handler.show(document.body.innerHTML);");

super.onPageFinished(view, url);

}

@Override

public void onScaleChanged(WebView view, float oldScale,

float newScale) {

// TODO Auto-generated method stub

super.onScaleChanged(view, oldScale, newScale);

webpage.requestFocus();

webpage.requestFocusFromTouch();

}

});

通过以上的操作,你就可以达到你需要的效果了。挺简单实用的

获取WebView加载的网页内容并进行动态修改

http://www.jianshu.com/p/3f207a8e32cb [Android]WebView读取本地图片 http://www.cnblogs.com/kimmy/p/4769788. ...

android中滑动SQLite数据库分页加载

今天用到了android中滑动SQlit数据库分页加载技术,写了个测试工程,将代码贴出来和大家交流一下: MainActivity package com.example.testscrollsqli ...

获取WebView加载HTML时网页中的内容

main.xml如下: [html] view plaincopy

Android项目实战(五十六):获取WebView加载的url的请求错误码

例如需求,我有一个WebView 加载一个url, 该url对应的网页本身自带下拉刷新 ,但是网页本身会有出现400 500 等异常请求错误码 这时候网页加载失败,页面本身的下拉是无法使用的,要求重新 ...

Android中插件开发篇之----动态加载Activity(免安装运行程序)

一.前言 又到周末了,时间过的很快,今天我们来看一下Android中插件开发篇的最后一篇文章的内容:动态加载Activity(免安装运行程序),在上一篇文章中说道了,如何动态加载资源(应用换肤原理解析 ...

Android 接入X5WebView,让WebView加载更快;

X5内核,微信和QQ浏览器都在用的WebView: 官网地址:https://x5.tencent.com,详细的信息进官网了解: 这是官方的宣传语: 1) 速度快:相比系统webview的网页打开速 ...

关于Android中Fragment静态和动态加载的方法

一.静态加载 1.首先创建一个layout布局fragment.xml,里面放要显示和操作的控件 2.创建一个layout布局main1.xml,用来实现页面的跳转(跳转为要实现静态加载的界面) 3. ...

Android中GridView滚动到底部加载数据终极版

之前在项目中有一个需求是需要GridView控件,滚动到底部自动加载.但是呢GridView控件并不提供诸如ListView监听滚动到底部的onScrollListener方法,为了实现这样一个效果, ...

WebView 加载网页和java 与js交互

[mw_shl_code=java,true]WebView是一个可以显示网页的控件.需求:通过WebView加载assets下的html文件.实现页面的缩放.向menu键添加:前进.后退和刷新,实现 ...

随机推荐

Git_1基础操作,从安装到提交完成(windows)

github地址:https://github.com/zhangsai521314/Git 1:安装Git Bash(https://git-scm.com/),安装一路NEXT. 2:目录架构: ...

【python】lxml

来源:http://lxml.de/tutorial.html lxml是python中处理xml的一个非常强大的库,可以非常方便的解析和生成xml文件.下面的内容翻译了链接中的一部分 1.生成空xm ...

.NET 面试题整理

概念类 请你说说.NET中类和结构的区别? 答:结构和类具有大体的语法,但是结构受到的限制比类要多. 结构不能申明有默认的构造函数,为结构的副本是又编译器创建和销毁的,所以不需要默认的构造函数和析构函 ...

winform学习之----Directory

Directory 文件夹目录 几个方法: CreateDirectory,delete,move,getfiles,exists 操作文件:用File 操作路径:用path 操作文件夹:Direct ...

C#委托详解(1):什么是委托

本系列文章将详细探讨C#中的委托,列举其主要的实现方式,并分析其在设计层面和编码层面带来的好处,最后会讨论其安全性和执行效率等. 什么是委托? 委托是寻址方法的.NET版本,使用委托可以将方法作为参数 ...

图解如何用U盘重装系统

第一类方法: 原生U盘安装,本工具制作完的U盘启动菜单含Windows7操作系统安装功能,使用本功能可以将Win7系统完美移植到你的U盘中.本功能不用进PE不用虚拟光驱,不受FAT32和NTFS文件系 ...

android客户端从服务器端获取json数据并解析的实现代码(重要)

首先客户端从服务器端获取json数据 1.利用HttpUrlConnection /** * 从指定的URL中获取数组 * @param urlPath * @return * @throws Exc ...

Observer设计模式【利用商品概念解释】

每个人都想过着富有的生活,这是很正常的. 这里以开店进货为例. 在讲之前解释英语单词: Observer:查看:遵守 Observable:可见的,公开的. 从单词可以知道:商品用来卖,所以公开,继承 ...

Linux系统目录

[root@localhost ~]# ls /bin dev home lost+found misc opt root selinux sys usrboot etc lib media net ...

Netty入门(二)之PC聊天室

参看Netty入门(一):Netty入门(一)之webSocket聊天室 Netty4.X下载地址:http://netty.io/downloads.html 一:服务端 1.SimpleChatS ...

android webview 加载内容,Android中通过Java获取Webview加载内容相关推荐

  1. python读取html中body_python批量获取html内body内容的实例

    现在有一批完整的关于介绍城市美食.景点等的html页面,需要将里面body的内容提取出来 方法:利用python插件beautifulSoup获取htmlbody标签的内容,并批量处理. # -*- ...

  2. Python中使用xpath获取Scrtpt里面的内容

    xpath获取script里面的内容建议使用正则表达式 import json import re from lxml import etree# 1.获取html页面内容 xml_data = et ...

  3. endnote没有加载项_word中手动添加endnote的加载项

    用Endnote管理文献,在写作的同时插入引文,这对于写文章的朋友们来说太重要了.我今天遇到这个问题,花时间钻研了,觉得应该记录下来,相信也会方便大家.查了网上许多帖子依然不得解,可能是Word版本变 ...

  4. php xmlhttp.responsetext,XMLHttpRequest中responseText怎么获取指定div的内容,而不是整个HTML的内容...

    ]+id='_ajax'[^>]*>(.*)/is",$str,$arr); print_r($arr[1]); 你不是给自己找麻烦吗? document.getElementB ...

  5. python查看内存地址的内容_python中如何查看指定内存地址的内容

    python中一般并不需要查看内存内容,但作为从C/C++过来的人,有的时候还是想看看内存,有时是为了验证内容是否与预期一致,有时是为了探究下内存布局. from sys import getsize ...

  6. c语言编号程序,c语言中如何在一个程序语句前加编号c语言中如何在一个程序语句前加...

    多数情况下,现在的编程高手都是从学习C 语言入门的,在学校里,计算机相关专业中最基础的课程也包括C 语言,因此,掌握好这门课程对每一位立志成为优秀程序员的初学者来说是大有裨益的!另外,对想通过参加全国 ...

  7. python读取文件特定内容_利用python代码获取文件特定的内容,并保存为文档

    import os.path import re # 1 遍历指定目录,显示目录下的所有文件名 def each_file(file_path): path_dir = os.listdir(file ...

  8. WebView的使用之Android与JS通过WebView互调方法

    WebView的使用之Android与JS通过WebView互调方法 一.概述:  Android与JS通过WebView实现交互,实际上是: Android调用JS的代码: JS调用Android的 ...

  9. Android 系统(202)---Android:这是一份全面 amp; 详细的Webview使用攻略

    Android:这是一份全面 & 详细的Webview使用攻略 前言 现在很多App里都内置了Web网页(Hybrid App),比如说很多电商平台,淘宝.京东.聚划算等等,如下图 京东首页 ...

  10. Android Studio TV开发教程(十五) Android N及更早版本中的建议

    Android Studio TV开发教程 (转自Android官网https://developer.android.com/training/tv/start) 文章源自:光谷佳武 https:/ ...

最新文章

  1. YOLOv4实用训练实践
  2. spark2读取oracle工具类,spark读写Oracle、hive的艰辛之路(一)
  3. 15篇最新AI论文推荐新鲜出炉!真的很skr了~(附链接)
  4. 【Android必备】与其他碎片进行通信(10)
  5. __proto__(隐式原型)与prototype(显式原型)
  6. 人脸识别大规模爆发!
  7. SpringBoot项目新建之后修改编译版本
  8. WHY MAKE ANOTHER APPLICATION AT ISSM?
  9. css改变谷歌浏览器的滚动条样式
  10. Asp.Net Core 通过中间件防止图片盗链
  11. [转]NGINX-检测客户端是通过电脑还是移动设备访问的,将请求重定向到适配的WEB站点...
  12. 人工智能技术的三大学派_什么是人工智能?它离我们有多远
  13. stack和queue容器
  14. 小米刷机降级(自测红米note5)
  15. Confluence 6 配置数字格式
  16. 计算机主板USB接口介绍,如何解决计算机主板USB接口供电不足
  17. halcon分割区域的方法
  18. 几个南阳oj的STL题
  19. 华为鸿蒙理性,华为的理性 鸿蒙的节奏
  20. 笔记本电脑连接HDMI接口拓展显示器没有反应

热门文章

  1. php的get和post,PHP中GET和POST区别
  2. IBM人工智能进入法律行业:推世界首位AI律师ROSS
  3. Unity 下载安装Standard Assets
  4. java小数的数据类型_Java的基本数据类型
  5. java创建动态数组_动态数组java实现
  6. 程序员自编的中华古诗词数据库在GitHub上火了!
  7. 什么是diff算法?
  8. 日本JAFFE表情库
  9. 快手短视频的流量及视频推荐算法解析,助你轻松上热门
  10. java utf8 gbk 乱码,java UTF-8转GBK不乱码