相关问题
图片压缩并保存方法,有人知道吗?
1701浏览 • 1回复 待解决
弧形进度条实现,有人知道方法吗?
1500浏览 • 1回复 待解决
有人知道关于页demo吗?
1660浏览 • 1回复 待解决
有人知道发布页demo吗?
1942浏览 • 1回复 待解决
如何实现振动,有人知道吗?
2344浏览 • 2回复 待解决
导包报错,有人知道原因吗?
2256浏览 • 1回复 待解决
clientid相关问题,有人知道吗?
3053浏览 • 1回复 待解决
如何获取windowStage,有人知道吗?
1852浏览 • 1回复 待解决
SnapShot定位,有人知道怎么处理吗?
2352浏览 • 1回复 待解决
如何跳出ForEach,有人知道吗?
3235浏览 • 1回复 待解决
taskpool 使用问题,有人知道吗?
2177浏览 • 1回复 待解决
如何发送短信,有人知道吗?
3110浏览 • 1回复 待解决
有人知道吗?
1763浏览 • 1回复 待解决
有人知道JS menu如何隐藏吗?
5572浏览 • 1回复 待解决
webview组件demo ,有人知道吗?
1914浏览 • 1回复 待解决
如何保存faultLogger ,有人知道吗?
1748浏览 • 1回复 待解决
有人知道吗?
1466浏览 • 1回复 待解决
文件上传的实现,有人知道怎么处理吗?
1393浏览 • 1回复 待解决
应用动态导入的场景,有人知道吗?
1172浏览 • 1回复 待解决
读取文件流的方式,有人知道吗?
2775浏览 • 1回复 待解决
如何获取系统电量,有人知道吗?
3090浏览 • 1回复 待解决
charles抓包流程,有人知道吗?
1572浏览 • 1回复 待解决
$r是否支持嵌套,有人知道吗?
1667浏览 • 1回复 待解决
状态管理相关问题,有人知道吗?
1545浏览 • 1回复 待解决
如何获取组件高度,有人知道吗?
3259浏览 • 1回复 待解决
本文通过命令模式在HarmonyOS上实现一个简单的绘图板,该绘图板功能比较简单,只能以触点轨迹绘制线条。
使用的核心API
CanvasRenderingContext2D
Path2D
核心代码解释
首先我们声明一个抽象接口IBrush,用它定义不同笔触需要实现的方法。
为了方便,这里只定义普通的笔触。
对于每一次的绘制,都可以有两个命令,一个是绘制命令,另一个是撤销命令,我们将其封装为一个命令接口。
这里只绘制路劲一种方法。
虽然只有一个绘制路劲的命令,但是,我们为其提供下撤销和重做的功能,因此,依然需要一个请求者角色来对命令进一步封装。
然后就是在page完成绘画板功能
实现效果
适配的版本信息
IDE:DevEco Studio 4.0.1.501
SDK:HarmoneyOS 4.0.0.8