在之前的2篇文章《iOS Pages插入方程功能分析》和《Android插入方程技术方案分析》中,我们讨论了如何在Android平台实现方程功能。现在我们着手来实现方程编辑器。
一、目标
验证Android的方程技术实现方案,并完成『神马笔记』的方程编辑器。
二、概述
整个方程编辑器的实现过程,大概分成以下几个步骤。
序号 | 步骤 | 说明 |
---|---|---|
1 | 整体布局 | 自上而下包含以下几个部分: 1. 标题栏 2. 预览框 3. 编辑框 4. 快捷输入栏 |
2 | 快捷输入栏 | 为了测试方便,首先实现快捷输入栏以便于编辑方程。 |
3 | 方程编辑框 | 文本输入框,只支持LaTeX。MathML将在未来版本中得到支持。 |
4 | 方程预览框 | 方程预览以及状态提醒。 1. 方程预览——用户没有输入 2. 空方程——方程内容为空 3. 无效方程——无法解析 4. 方程式——最终方程效果 |
5 | 标题栏 | 对方程整体进行操作 |
三、实现过程
1. 快捷输入栏
快捷输入栏使用RecyclerView
完成,内容通过配置文件提供,以方便未来的扩展。
- symbol——显示的符号
- text——插入的文本内容
{
"list":[
{
"symbol": "+",
"text": "+"
},
{
"symbol": "-",
"text": "-"
},
{
"symbol":