[Android开发]WebView里改变浏览字体大小

使用rem构建web h5应用 处理chart 和 app webview 在安卓下错乱问题 前言 最早基于手淘做过一次H5 rem适配, 当时基于Hybrid APP。后面使用antd-mobile后,使用 阿里的高清方案。css 新增calc 函数 可以处理边框 配合 flex布局。但是字体大小要额外处理,并且部分安卓机型不支持calc。so,最后我还是决定采用阿里的rem。这也是踩坑的开始 内嵌rn webview。 我们为三方提供一个H5授权页,用于oAuth2 认证流程。在... 阅读详情

我们先看一下预览图:

这里写图片描述

新闻详情的布局如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/title_red_bg" >

        <ImageButton
            android:id="@+id/btn_back"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="5dp"
            android:background="@null"
            android:src="@drawable/back" />

        <ImageButton
            android:id="@+id/btn_share"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginRight="5dp"
            android:background="@null"
            android:src="@drawable/icon_share" />

        <ImageButton
            android:id="@+id/btn_size"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginRight="5dp"
            android:layout_toLeftOf="@id/btn_share"
            android:background="@null"
            android:src="@drawable/icon_textsize" />
    </RelativeLayout>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1" >

        <WebView
            android:id="@+id/wv_web"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />

        <ProgressBar
            android:id="@+id/pb_progress"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:indeterminateDrawable="@drawable/custom_progress" />
    </FrameLayout>

</LinearLayout>

我在在新闻详情页设置改变字体ImageButton的点击事件后进入以下方法:

/**
     * 显示选择对话框
     */
    private void showChooseDialog() {
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        String[] items = new String[] { "超大号字体", "大号字体", "正常字体", "小号字体", "超小号字体" };
        builder.setTitle("字体判断");
        builder.setSingleChoiceItems(items, mCurrentItem, new OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                mCurrentChooseItem = which;
            }
        });
        builder.setPositiveButton("确定", new OnClickListener() {
            WebSettings settings = mWebView.getSettings();
            @Override
            public void onClick(DialogInterface dialog, int which) {
                switch (mCurrentChooseItem) {
                case 0:
//就是通过设置settings的setTextSize来改变字体的大小    
                            settings.setTextSize(TextSize.LARGEST);
                    break;
                case 1:
                    settings.setTextSize(TextSize.LARGER);
                    break;
                case 2:
                    settings.setTextSize(TextSize.NORMAL);
                    break;
                case 3:
                    settings.setTextSize(TextSize.SMALLER);
                    break;
                case 4:
                    settings.setTextSize(TextSize.SMALLEST);
                    break;

                default:
                    break;
                }
                 //保存用户选择的状态
                mCurrentItem = mCurrentChooseItem;
            }
        });
        builder.setNegativeButton("取消", null);
        builder.show();
    }

以上,非常简单。

动态设置android webview字体大小DEMO 动态设置android webview字体大小的实例 立即下载

相关推荐

Win11专业版破解RDP限制:实现多用户远程桌面协同办公

本文详细介绍了如何在Windows 11专业版上破解RDP限制,实现多用户远程桌面协同办公。通过使用RDPWrap工具,用户可以绕过微软的授权限制,允许多个用户同时登录同一台电脑,提高硬件利用率和团队协作效率。文章包含详细的安装配置步骤、性能优化技巧及常见问题解决方案,适用于需要远程协作的办公场景。

weixin_33806300的博客 466

webview设置字体颜色、大小

//字体颜色设为白色,“p”标签内的字体颜色 public final static String CSS_STYLE = "p {color:#FFFFFF;}";// webView.loadDataWithBaseURL(null, CSS_STYLE+data, "text/html", "utf-8", null); 借鉴自:http://www.android100.org/html

逆流的鱼的专栏 1万+

手机相机基础技术解析:从硬件到算法的全面指南

手机相机的成像过程可简化为的链路,其核心硬件包括 镜头、CMOS传感器、ISP(图像信号处理器) 以及配套的软件算法。

weixin_44239603的博客 2447

WebView的文字大小和富文本展示设置方法

本片博客只是记录一下 , 本人平时常用到的一些功能 , 不深入说明请见谅 . 简单代码示意: webview字体大小的设置 private WebSettings settings; mJkjyMbzsDetailWebView = (WebView) findViewById(R.id.jkjy_mbzs_detail); //设置webView里字体大小 settings=mJkjyMbz...

qq_42818575的博客 2091

Cesium创建无人机视锥,同步视锥与鹰眼地图视角,实现视锥键盘控制。解决视锥初始化位置不准确问题等

本文描述了一个基于Cesium的3D视锥体可视化系统开发过程。系统实现了主视图与鹰眼视图的双屏联动,支持通过键盘控制视锥体的空间移动(WASD前后左右,Q/E旋转,C/Z升降),并实时同步更新两个视图。关键技术包括:1)基于主视图Scene创建Camera实现视锥体精确绘制;2)通过PerspectiveFrustum设置视锥参数;3)建立双视图的相机位置及视角同步机制。目前暂未实现视锥体far/near边界在鹰眼视图中的可视化,该系统可应用于无人机视角监控等三维场景交互需求。

coder_bin的博客 1589

C# 读取图片和扫描PDF中的文本

本博客将探讨如何使用C#和OCR库实现从图片和扫描的 PDF 中提取文本。Spire.OCR for .NET 是一个OCR文字识别库,专为在 .NET 应用程序中识别图片的文本而设计。首先,使用 Spire.PDF 将扫描的 PDF 转换为图片,然后利用 Spire.OCR 从这些图片中提取文本。由于该OCR库并不支持直接处理PDF,因此要从扫描的 PDF 中提取文本,我们首先需要将 PDF 文档转换为图片。转换完成后,再利用 Spire.OCR 从生成的图片中提取文本。方法来识别图片中的文本。

nuclear2011的博客 5401

解决Android Webview加载Html富文本,h5字体样式不起作用问题

问题起因:WebView作为整个页面的一个部分展示,展示的是一段H5片段(Html中body标签中的部分) 问题描述:H5前端设置好的字体大小,在WebView中展示时不起作用,导致字体大小都一样 问题解决的方法:给这段HTML代码段,添加头部 /** * 富文本适配 */ private String getHtmlData(String bodyHTML...

丸子家 6119

matinal:S4 HANA 详解ACDOCA与BSEG的区别都在这了

当你在Coding Block中添加自定义字段的时候

matinal 當冬夜漸暖 。公众号:matinal 4568

android webview 样式解析不正确,解决Android Webview加载Html富文本,h5字体样式不起作用问题...

问题起因:WebView作为整个页面的一个部分展示,展示的是一段H5片段(Html中body标签中的部分)问题描述:H5前端设置好的字体大小,在WebView中展示时不起作用,导致字体大小都一样问题解决的方法:给这段HTML代码段,添加头部/*** 富文本适配*/private String getHtmlData(String bodyHTML) {String head = ""+ " "+ ...

weixin_30536861的博客 1106

别再让电池充不满!用CN3791芯片设计太阳能充电电路,这几个调试坑我帮你踩了

本文详细解析了使用CN3791芯片设计太阳能充电电路时的常见调试问题及解决方案。从RCS电阻的选择到MPPT电压偏差的修正,再到线路损耗和温度补偿的优化,提供了全面的避坑指南。通过实测数据和优化方案,帮助工程师提升锂电池充电效率,确保太阳能充电电路的稳定性和可靠性。

weixin_42528191的博客 238

【AI编程】Trae 环境搭建与配置从使用到项目实战详解

Trae 环境搭建与配置从使用到项目实战详解

congge 5650

android webview字体大小的设置

今天在做项目时,碰到了要设置webview字体大小,以前用的时候也没设置过,因此也不会,于是到处找关于“如何设置webview字体大小”的资料,好多大神给出的答案都是各种判断,稍显麻烦,我是最怕麻烦的人了,于是继续查资料,最后总结如下,简单几行代码就搞定 private WebSettings settings; mJkjyMbzsDetailWebView = (WebV

Android_Amelia的专栏 5212

SerDes系列之 SSC扩频时钟技术

扩频时钟,又称展频(SSC-Spread Spectrum Clocking),当前PCIE、DDR、USB等几乎所有的高速接口都支持SSC的功能。电子工程师在日常的电气测试中经常与之接触,在电磁传导和辐射发射验证过程中,经常需要使用到芯片的SSC功能,它的物理表现形式,就是信号的比特率会在一个很小的范围内浮动,多见于周期性变化的时钟信号。

一只豌豆象的博客 3441

android字粗细变化,[Android开发]WebView里改变浏览字体大小

我们先看一下预览图:新闻详情的布局如下:android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" >android:layout_width="match_parent"android:layout_height="wrap_content"and...

weixin_39986171的博客 387

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Webview扩展之改变字体大小

改变WebView字体大小效果:    直接上代码: package com.example.zhihuibj.BaseMenuDetailPager.MenuDetail; import java.util.ArrayList; import com.example.zhihuibj.R; import com.example.zhihuibj.WebViewActivit

小磊's blog 2808

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

手机改变系统字体大小导致h5页面在webview中变形。。h5页面嵌入webview中,在有些手机上布局乱套的bug。。

解决因为手机设置系统字体大小导致h5页面在webview中变形的BUG   说实话,遇到这个问题,我内心里是崩溃的,表面还一副镇定自若的模样,事实上受到了一万点打击,我做的页面完美适配,就那一台手机,就那一台,整体都是乱的。   然后发现那台手机所有的字体都特别大,像是老年机,这时尝试去查看系统字体大小,发现设置比标准大了两个度【超小–标准–大--超大–巨大,就是五个程度,具体什么字不想看了,要吐...

杜鲁阳的博客 4306

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

android webview 字体 系统字体大小,【转】android webview设置内容的字体大小

Enumforspecifyingthetextsize.SMALLESTis50%SMALLERis75%NORMALis100%LARGERis150%LARGESTis200%原文:http://www.cnblogs.com/yourancao520/archive/2012/06/14/2548900.html/***webview*/WebVi...

weixin_39913422的博客 1452

Android开发WebView之加载HTML源码修改HTML字体大小以及缩放HTML的方法

老套路上图: 再看下缩放功能: 先说下设置HTML网页字体大小的方法: //设置网页字体大小 webview.getSettings().setTextSize(WebSettings.TextSize.LARGEST);//已弃用,默认值为100也就是不放大字体 //新方法 webview.getSettings().setTextZoom(250);默认值为100也就是不放大字体 再看下缩放方法: // 设置可以支持缩放,两个方法必须同时设置,设置后或出现放大加号.

xiayiye5的博客 2164

Android WebView通过代码修改网页的字体大小

今天遇到一个问题:需要在Android 客户端控制webview网页中字体的大小,webview加载的内容是从服务端获取的html片段,我们知道webview,可以直接加载html片段(mWebView.loadDataWithBaseURL(null, news.getContent(), "text/html", "utf-8", null);) /** * mWebView

androidzmm的博客 1万+

iOS中通过设置CSS改变WebView字体大小,颜色,背景颜色

原文链接:http://www.mamicode.com/info-detail-998985.html 标签: 因为WebView自带的属性是不可以改变字体大小颜色这些需求的,只能通过改变css样式,内置来解决。在百度上搜了半天很多不靠谱,现在给出几种解决方案如下: 1.第一种方式:在WebView的代理方法webViewDidFinishLoad中: 字体大小: [webV

lvchaman的专栏 4734

Android WebView(属性)缩放 字体大小

WebView基本使用    WebView是View的一个子类,可以让你在activity中显示网页。   可以在布局文件中写入WebView:比如下面这个写了一个填满整个屏幕的WebView:  xml version="1.0" encoding="utf-8"?> WebView xmlns:android="http://schemas.android.com/apk/r

执迷的博客 3797

android webview 字体 系统字体大小,Android 系统字体大小动态改变,导致webview中显示不兼容的问题解决...

唠叨几句:在移动端再开发的过程中,很容易使用到webview,它也是用来混合开发的中间桥梁,因此解决webview使用过程中出现的问题是非常有必要的;问题现象与发现:现象:日前,在是使用webview加载html过程中出现了一个这样的问题:页面显示变形;url中有设置图片,图片展示不全呈截断式;发现:其他所有手机都正常,只有一部手机显示不正常(上级的手机,哎);后来发现该手机比同款同型号手机显示字...

weixin_36293258的博客 1109

WebView字号设置

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666) 下面示例是通过改变WebSettings的TextSize值来改变字号的,如果是html文本也可以用js来改变富文本的字体大小。 测试activity: package com.home.webviewsiz...

孤云博客 5363

解决因为手机设置字体大小导致h5页面在webview中变形的BUG

解决因为手机设置字体大小导致h5页面在webview中变形的BUG 首先,我们做了一个H5页面,在各种手机浏览器中打开都没问题。我们采用了rem单位进行布局,通过JS来动态计算网页的视窗宽度,动态设置html的font-size,一切都比较完美。 这时候,你自信满满的将h5地址交给了APP工程师,做了一个WEBVIEW嵌套,然后就顺利交工了。 测试组在一堆手机中测试APP,突然,在某个手机上打开,...

weixin_41544124的博客 4198

Android WebView常见问题,安卓开发必须会的技能

0)][外链图片转存中…(img-WCBEeWD6-1710499845871)][外链图片转存中…(img-ePHZNYQD-1710499845872)][外链图片转存中…(img-1G6IFV86-1710499845872)]由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)

m0_60707708的博客 1235

android webview 字体被放大,解决因为手机设置字体大小导致h5页面在webview中变形的BUG...

解决因为手机设置字体大小导致h5页面在webview中变形的BUG首先,我们做了一个H5页面,在各种手机浏览器中打开都没问题。我们采用了rem单位进行布局,通过JS来动态计算网页的视窗宽度,动态设置html的font-size,一切都比较完美。这时候,你自信满满的将h5地址交给了APP工程师,做了一个WEBVIEW嵌套,然后就顺利交工了。测试组在一堆手机中测试APP,突然,在某个手机上打开,你的页...

weixin_34015347的博客 3781
上一篇: [Android开发]使用ViewPagerIndicator开源库处理其中事件分发机制
下一篇: [Android开发]三级缓存初探索
陶程
博客等级 码龄12年 360粉丝 56原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值