`
dubinwei
  • 浏览: 56329 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Android WebView

阅读更多
详细内容可以查看我的网站:[url]http://1.playandroid.duapp.com/index.jsp [/url]
1、设置WebView为透明:
android:background="#00000000"
android:cacheColorHint="#00000000"
WebView.setBackgroundColor(0);

2、WebView 显示sd卡图片:
webView.loadDataWithBaseURL(null,"<img src=\"file://sdcard/dcim/Camera/2010-12-15_08-33-50_583.jpg\" />", "text/html", "utf-8", null);

3、WebView显示字符串
webView.loadDataWithBaseURL("fake://not/needed", s1, "text/html", "utf-8", "");

4、设置WebView中显示字体的大小
public static final TextSize[] FONT_SIZES = new TextSize[]{
    TextSize.SMALLER,TextSize.NORMAL,TextSize.LARGER};
private WebSettings wb;
wb = mWebViewRightContent.getSettings();
wb.setTextSize(FONT_SIZES[iFontSizeId]);

字体大小:
public enum TextSize {
    SMALLEST(50),
    SMALLER(75),
    NORMAL(100),
    LARGER(150),
    LARGEST(200);
    TextSize(int size) {
        value = size;
    }
    int value;
}

5、WebView显示html文件时,若要达到和PC上浏览器显示的效果完全一样,只需对WebView做一下设置即可:
//适应全屏  39适应竖屏    57适应横屏
mWebView.setInitialScale(39);

注意的是:html只字体太小的话,在Android手机或开发板上显示的就相当的小。一般6、7号字体吧!

6、WebView设置渐变:
android:fadingEdge="vertical"
android:fadingEdgeLength="20px"
(垂直方向,上下渐变区域为20px)

7、设置WebView可触摸放大缩小:
mWebView.getSettings().setBuiltInZoomControls(true);

8、WebView双击变大,再双击后变小,当手动放大后,双击可以恢复到原始大小,如下设置:
webView.getSettings().setUseWideViewPort(true);

9、几种加速WebView加载的方法
· 提高渲染的优先级
webView.getSettings().setRenderPriority(RenderPriority.HIGH);
· 使用webView.getSettings().setBlockNetworkImage,把图片加载放在最后来加载渲染
webView.getSettings().setBlockNetworkImage(true);

10、将字符串转换成HTML形式的文件显示:
//获取的字符串
String sDetails = cursor.getString(cursor.getColumnIndex("sChinese"));
//按行截取字符串,将其存放在数组中
String[] str = sDetails.split("\n");
String s1 = "";
//遍历数组进行判断,如果条件成立,就添加设定的css样式
for(int i = 0;i < str.length;i ++){
    if(str[i].trim().startsWith("vt.")){
        str[i] = "<h3 style=\"font-size:10px; color:#000; background:#FCFCFC; padding:3px 5px;\">" + str[i] + "<h3>" + "\n";
    }else if(getMark(str[i].trim())){
    str[i] = "<h4 style=\"font-size:10px; color:#F60; font-weight:normal;\">" + str[i] + "</h4>" + "\n";
    }else if(str[i].trim().startsWith("〖")){
        str[i] = "<span style=\"color:#333; font-size:10px; color:#F60\">" + str[i] + "</span>" + "\n";
    }else {
        str[i] = "<p style=\"line-height:16px; font-size:10px;color:#666;\">" + str[i] + "</p>" + "\n";
    }
    //将修改后的字符串拼接起来
    s1 += str[i];
}
//用WebView将字符串以HTML的形式显示出来
webView.loadDataWithBaseURL("fake://not/needed", s1, "text/html", "utf-8", "");

11、WebView加载本地资源文件html时,如果html中有图片,加载时会先加载文字,后加载图片,因此会出现排版混乱的情况,好像加载了两遍,这种情况是因为,html中图片的高度是自适应的,没有设定具体的值,图片加载出来后,并没有将文字往下挤压,所以出现了重叠的现象,解决方法:
将html中图片的宽高设成固定的值,这样加载文字后,会将图片的位置预留出来,之后图片加载出来后会直接在预留的位置显示,不会出现重叠的现象。
(适用于自己编写的HTML文件,如果加载的是网络地址URL,参考上面的第9点)
分享到:
评论

相关推荐

    Android WebView 去除标题

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中加载和显示网页内容。有时候,我们可能希望去除WebView中的标题部分,以实现更自定义化的界面设计。本篇文章将详细探讨如何在Android的...

    实例详解Android Webview拦截ajax请求

    Android Webview 拦截 Ajax 请求的详细讲解 Android Webview 提供了页面加载及资源请求的钩子,但是对于 H5 的 Ajax 请求并没有提供干涉的接口。这意味着我们不能在 Webview 中干涉 JavaScript 发起的 HTTP 请求,...

    android webview播放网页视频

    在Android开发中,Webview是一个非常重要的组件,它允许我们加载和展示网页内容。当涉及到在Webview中播放网页视频时,这个问题可能会变得稍微复杂,因为Android原生的Webview并不总是支持所有现代HTML5视频特性。...

    Android Webview视频播放器

    在Android平台上,Webview是一个非常重要的组件,它允许开发者在原生应用中嵌入网页内容。这个项目"Android Webview视频播放器"是利用Webview来实现HTML5视频播放功能的示例。以下是对这个项目的详细解读: 1. **...

    Android webview加载网页.zip

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序内部加载和显示网页内容,无需跳转到外部浏览器。这个“Android webview加载网页.zip”文件可能包含了一个示例项目或者教程,帮助开发者理解...

    Android webview调用摄像头扫描二维码

    本文将详细讲解如何在Android Webview中调用摄像头进行二维码扫描,并结合ZXing(Zebra Crossing)解析包进行二维码的解析。 首先,让我们了解Android Webview的基本用法。Webview是Android SDK提供的一种视图组件...

    Android webview 内存泄露的解决方法

    Android webview 内存泄露的解决方法 最近在activity嵌套webview显示大量图文发现APP内存一直在涨,没法释放内存,查了很多资料,大概是webview的一个BUG,引用了activity导致内存泄漏,所以就尝试传递...

    通过css注入实现android webview的夜间模式

    在Android开发中,Webview是一个非常重要的组件,它允许我们加载和展示网页内容。而实现夜间模式是现代应用中常见的需求,特别是在保护用户视力和节省电池方面。本篇将详细介绍如何利用CSS注入来实现在Android ...

    Android WebView播放视频(包括全屏播放)

    在Android应用开发中,WebView是一个非常重要的组件,它允许开发者在应用程序内嵌入网页内容,实现类似浏览器的功能。本文将详细讲解如何在Android的WebView中播放视频,包括全屏播放的实现方法。以下是对该主题的...

    Android Webview滑动监听

    在Android开发中,Webview是一个非常重要的组件,它允许开发者在原生应用中嵌入网页内容,实现网页与原生应用的交互。本篇将详细讲解如何在Android Webview中实现滑动监听以及图片的放大缩小功能。 首先,我们要...

    Android WebView 缓存详解

    Android WebView 缓存详解 一. 两种缓存类型: 页面缓存:加载一个网页时的html、JS、CSS等页面或者资源数据,这些缓存资源是由于浏览器 的行为而产生,开发者只能通过配置HTTP响应头影响浏览器的行为才能间接地...

    android webview 版本69.0

    在Android平台上,WebView是一个至关重要的组件,它允许开发者在应用程序中嵌入网页浏览功能,而无需启动完整的浏览器应用。在给定的标题“android webview 版本69.0”中,提到的是一个特定版本的WebView,即69.0。...

    动态设置android webview字体大小DEMO

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中内嵌网页内容。这个"动态设置android webview字体大小DEMO"是一个示例项目,专门演示如何在运行时调整WebView中显示的文本的字体大小,以提高...

    Android WebView H5调用拍照

    在Android应用开发中,WebView是一个非常重要的组件,它允许开发者在原生应用中展示网页内容。混合开发(Hybrid Development)结合了Web技术与原生应用的优势,使得开发者可以使用HTML5、CSS3和JavaScript来构建应用...

    Android WebView另类实现 自由复制进入选择文字模式

    在Android开发中,WebView是一个非常重要的组件,它允许我们在原生应用中展示网页内容,提供了一种混合式应用开发的解决方案。本篇文章将深入探讨如何在Android WebView中实现自由复制和选择文字的功能,这对于增强...

    android webview input=file 失效解决方案

    在Android开发中,Webview是一个重要的组件,它允许我们在原生应用中内嵌网页内容,提供混合式应用的用户体验。然而,在使用Webview时,有时会遇到一个问题:当HTML页面中包含`&lt;input type="file"&gt;`用于上传文件的...

    android webview调用系统相机和图库

    android webview调用系统相机和图库支持5.0通过了小米2s(android5.0.2)小米4(android 4.4.4)还有LG的nexus(android 5.0)的测试,在三星GT-I9300I(android 4.3 在这款手机上测试的时候,拍照后有的时候在...

    android Webview(H5)中调用相册和拍照

    在Android应用开发中,Webview是一个非常重要的组件,它允许我们加载并运行网页内容,甚至与JavaScript进行交互。本文将详细讲解如何在Android的Webview中调用相册和拍照功能,以实现H5与原生Android应用的深度集成...

    Android WebView cache 缓存 在线 视频播放

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序内部加载和显示网页内容。而WebView的缓存机制则是提高用户体验、减少网络流量的关键技术之一。本文将详细讲解如何利用WebView实现在线视频播放...

Global site tag (gtag.js) - Google Analytics