最近项目中有用到数学键盘公式
例如:数学公式:
用户输入键盘后产生的数据应该就是这样的
$$ \\[ \\sum_{k=1}^n k^2 = \\frac{1}{2} n (n+1).\\] $$
但是我们肯定不能显示出这样的一长串东西出来给用户。
基于目前现状,一直想着寻找替换方案,最近寻找了一下解决方案,惊奇的发现现在已经有支持Latex原生渲染的开源框架了。今天来学习使用一下。它就是:FlexibleRichTextView。

源码GitHub地址:
FlexibleRichTextView
基本标签介绍:
initLable 点这里
详细介绍:
API详细介绍

基本使用:
在你的项目build.gradle文件中add,注意不是app目录下的build.gradle文件

allprojects {repositories {...maven { url "https://jitpack.io" }}
}

同时 在你app的build.gradle文件 add

compile 'com.github.daquexian:FlexibleRichTextView:0.8.2'

接下来就是尝试了:
现在你的Application或者活动中初始化

public class MyApplication extends Application {@Overridepublic void onCreate() {super.onCreate();//init flexiblerichtextview AjLatexMath.init(this);//code highlightCodeProcessor.init(this);}
}

在布局文件中添加一个:

 <com.daquexian.flexiblerichtextview.FlexibleRichTextViewandroid:id="@+id/id_rich_tv"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Hello World!"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent"/>

在主活动中:

FlexibleRichTextView flexibleRichTextView = findViewById(R.id.id_rich_tv);
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("$$\\sum_{i=1}^n a_i=0$$,");stringBuilder.append("\r\n");stringBuilder.append("$$f(x)=x^{x^x}$$");stringBuilder.append("\r\n");stringBuilder.append("$$f(x_1,x_x,\\ldots,x_n) = x_1^2 + x_2^2 + \\cdots + x_n^2 $$");stringBuilder.append("\r\n");stringBuilder.append("$$\\left. \\frac{du}{dx} \\right|_{x=0}.$$");stringBuilder.append("\r\n");stringBuilder.append("f(n) = \\begin{cases} \\frac{n}{2}, & \\text{if } n\\text{ is even} \\\\ 3n+1, & " +"\\text{if } n\\text{ is odd} \\end{cases}");stringBuilder.append("\r\n");stringBuilder.append("$$\\mbox{对任意的$x>0$}, \\mbox{有 }f(x)>0. $$");stringBuilder.append("\r\n");stringBuilder.append("$$\\sqrt[n]{x_r_r_r} $$");stringBuilder.append("\r\n");stringBuilder.append("$$ \\frac{x+2}{x} \\sqrt{x} $$");stringBuilder.append("\r\n");stringBuilder.append("$$ \\[f(x,y,z) = 3y^2 z \\left( 3 + \\frac{7x+5}{1 + y^2} \\right).\\] $$");stringBuilder.append("\r\n");stringBuilder.append("$$ P(x|c)=\\frac{P(c|x)\\cdot P(x)}{P(x)} $$");stringBuilder.append("\r\n");stringBuilder.append("$$ \\Large x=\\frac{-b\\pm\\sqrt{b^2-4ac}}{2a} $$");stringBuilder.append("\r\n");stringBuilder.append("$$ \\sum_{i=1}^n i = \\frac{n(n+1)}2 $$");stringBuilder.append("\r\n");stringBuilder.append("$$ f(x)=\\int_{-\\infty}^x e^{-t^2}dt $$ 这道公式我也不知道怎么做");stringBuilder.append("\r\n");stringBuilder.append("$$ \\cos 2\\theta  = \\cos^2 \\theta - \\sin^2 \\theta = 2 \\cos^2 \\theta - 1. $$");stringBuilder.append("\r\n");stringBuilder.append("$$ \\displaystyle= \\frac{k(k+1)}{2}+k+1 $$");stringBuilder.append("\r\n");stringBuilder.append("$$ \\frac{x}{2}-3=0 $$");stringBuilder.append("\r\n");stringBuilder.append("$$ x=\\frac{3}{2} $$");stringBuilder.append("\r\n");stringBuilder.append("$$ \\[ \\sum_{k=1}^n k^2 = \\frac{1}{2} n (n+1).\\] $$");flexibleRichTextView.setText(stringBuilder.toString());

运行一下看看效果:

好像没什么问题。
可以看到解析公式的时候都是以”美元符号“开始以“美元符号”结束。(CSDN把美元符号也作为标签了 不能输入 。。。。)
今天就是做一个简单的尝试。更详细介绍的可以参考上面GitHub的链接地址。

安卓数学公式 FlexibleRichTextView 的使用相关推荐

  1. 安卓Android与H5双向交互MathJax展示数学公式(源码+解析)

    安卓Android与H5双向交互MathJax展示数学公式(源码+解析) 博主就今天周五又做了个需求(安卓Android与H5交互),原来上线的功能是服务器配置过来的学习报告(一个H5页面)并提供原始 ...

  2. android数学公式编辑,数学公式编辑器下载-数学方程式编辑器APP 2.122 安卓版-我游网...

    数学公式编辑器APP绝对称得上最好用的数学方程式编辑器,有了它,你可以在常见论坛中讨论数学问题.该APP包括一个功能齐全的数学方程式编辑器, 你可以使用用户友好的界面轻松编写微积分,矩阵和行列式或三角 ...

  3. Github安卓流行布局开源库

    抽屉菜单 MaterialDrawer ★7337 - 安卓抽屉效果实现方案 Side-Menu.Android ★3865 - 创意边侧菜单 FlowingDrawer ★1744 - 向右滑动流动 ...

  4. 安卓开源库 安卓相机开源库

    安卓相机开源库 最近做了一个Android UI相关开源项目库汇总,里面集合了OpenDigg上的优质的Android开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitH ...

  5. latex 数学公式_数学公式、方程式 OCR 识别编辑 LaTeX 公式软件神器—极度公式

    极度公式:化繁为简,助您高效工作 极度公式是一款强大的跨平台专业 Latex 公式软件.支持公式字符编辑与录入.公式模板选择,对于重要公式支持云备份.也可以手机端(安卓)拍照桌面端编辑(Windows ...

  6. 基于STM32-消防栓监测系统毕业设计---论文(附加最全面的从硬件电路设计->驱动程序设计->阿里云物联网搭建->安卓APP设计)

    设计展示视频连接:消防栓监测系统视频 驱动程序工程文件:消防栓监测系统驱动程序工程(全寄存器开发的) 消防栓监测系统所有设计资料:全栈设计,如下图所示 消防栓监测系统论文(图片看不清的可以下载文档看) ...

  7. android商务办公型计算器开发与设计,可编程科学计算器v1.6.7.56 安卓版_Scientific Calculator Plus-腾牛安卓网...

    可编程科学计算器 Scientific Calculator Plus 是一款台湾同胞开发的高级计算器软件,原名程式开发科学计算器.普通的函数计算什么的自然不再话下,他还支持复数计算.阵列.不定积分三 ...

  8. 阿里巴巴重磅开源MNNKit:基于MNN的移动端深度学习SDK,支持安卓和iOS

    机器之心报 点击上方"开发者技术前线",选择"星标" 13:21 在看|留言|真爱 来自:机器之心   参与:一鸣.Jamin 近来,有越来越多的深度学习框架开 ...

  9. 安卓屏幕朗读app_认真分享4个让你偷偷成长的宝藏App

    今天分享 4 个让你偷偷成长的宝藏 App ,每一个都是自己用心挑选,每一个都是非常好用,让你提升自我,学习成长.所有 App 下载方法文章末尾提供. 1 典读 典读是一个特别良心并且完全免费的宝藏阅 ...

最新文章

  1. 服务器架设笔记——多模块和全局数据
  2. 十四:桥接者模式(发送各类短信案例)
  3. 1.4 Matplotlib:绘图
  4. SLAM-ch2-使用kdevelop创建helloWorld程序
  5. nacos oaut服务地址_spring-boot+nacos+spring-oauth2整合方案
  6. 解决NSData转NSString返回nil的问题
  7. 镜像镜像–使用反射在运行时查看JVM内部
  8. Exynos4412 裸机开发—— 流水灯
  9. 简单的python画图代码_python opencv如何实现简易画图板 python opencv实现简易画图板代码...
  10. 个性艺术创意风采人物海报,psd分层模板
  11. latex表插入的位置不对_VSCode_LaTex_英文amp;中文配置
  12. 比较两个listString是否相等
  13. range,xrange,arange比较
  14. ​CS客户端渗透测试详解(三)
  15. 一张图,讲明白UML类图
  16. 深入理解Linux内核-第3版 译者序、前言、目录 内核2.6.11
  17. 上海升级为欧莱雅集团北亚区总部;西门子与太古可口可乐将共同打造18座数字化工厂 | 美通企业日报...
  18. 人体手脚部位与内脏的对应关系图
  19. MOOS-ivp 实验九 分布式旅行商问题(1)
  20. sqli-labs-maser第1-6关

热门文章

  1. [STM32] 分散加载文件之二 (分散加载的结构)
  2. 冷饮热饮都能做,七彩叮当破壁机体验
  3. 寻找UI设计灵感:20大电影公司Logo设计欣赏
  4. Linux电源管理之 Suspend
  5. 【机器学习】先验概率、后验概率、贝叶斯公式、 似然函数
  6. 使用GridMaps和Godot及Blender设计游戏场景视频教程
  7. js实现浏览器中的前进、后退按钮
  8. mxnet训练arcface加速实验
  9. #读书笔记# 《人类简史》Chapter3
  10. 高效率使用时间的一些方法