前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android自定义WebView加载本地模板及传参

Android自定义WebView加载本地模板及传参

作者头像
码客说
发布2023-12-30 08:37:13
1650
发布2023-12-30 08:37:13
举报
文章被收录于专栏:码客码客

模板引擎

代码语言:javascript
复制
implementation 'com.x5dev:chunk-templates:3.5.0'

添加引用

代码语言:javascript
复制
import com.x5.template.Chunk
import com.x5.template.Theme
import com.x5.template.providers.AndroidTemplates

模板文件要放在src/main/assets/themes文件夹下

假如文件为katex.chtml

使用方法

代码语言:javascript
复制
private fun getChunk(): Chunk {
    val loader = AndroidTemplates(context)
    return Theme(loader).makeChunk("katex")
}

val chunk: Chunk = getChunk()
chunk.set("formula", mText)

chunk.toString()

模板中这样取值

代码语言:javascript
复制
{$formula}

这样chunk.toString()获取到的就是把变量已经塞进模板后的字符串了。

页面中引用JS/CSS

src/main/assets/katex文件夹下的文件katex.min.css

在页面中可以通过以下方式引用:

代码语言:javascript
复制
<link rel="stylesheet" type="text/css" href="file:///android_asset/katex/katex.min.css">

Webview加载网页文本

代码语言:javascript
复制
loadDataWithBaseURL(null, htmlText, "text/html", "utf-8", "about:blank")

高度和内部高度自适应

直接添加android:layout_height="wrap_content"即可。

本身就支持不用通过网页加载完事件再把高度传出来。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-12-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 模板引擎
  • 页面中引用JS/CSS
  • Webview加载网页文本
  • 高度和内部高度自适应
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档