白板类应用的模式交互设计方案
在一个白板类应用的交互中一定会涉及到模式之间的更换和交互冲突。白板类软件的交互模式一般包含了笔迹书写模式,选择模式,擦除笔迹模式等。多个模式之间存在切换,而切换可以发生在某个模式执行过程,如需要在白板软件里面支持笔迹书写功能,在书写的过程打断进入笔迹的擦除模式。本文告诉大家我所在团队的白板内核的模式交互设计方案,本文不会涉及到具体实现的逻辑代码 我从 2017 开始到现在都在做白板软件,我对整个白板体系的软件层面都比较了解。整个开发过程也对整个白板软件的模式交互方案换了有一些方案,当前使用的方案也许不是最优的,但是相对来说比较适合业务 整个框架(不敢说架构)里面三个大块,第一块是输入前置,第二块是输入切换,第三块是业务处理 输入前置 小伙伴都知道,在 Windows 下实现触摸不是简单的事情,而在 WPF 中尽管有大量的封装,但是对于整体触摸来说,依然存在一些业务上的坑。如按下和抬起不成对等。而我期望在上层业务里面不应该每个业务都处理这些交互上的问题。因此就有了对 WPF 层的交互的封装,此封装可以定制交互输入数据,同时隔离框架差异。换句话说是这套框架可以脱离 WPF 执行 在触摸屏幕上面,在 WPF 收到的触摸可以通过监听三个不同的事件 Touch Stylus Mouse 事件,这三个事件的触发顺序以及触摸和触笔的差异,会让上层业务开发者们不得不在开发的时候关注这些细节