自定义 Rive RenderObject(Custom Rive RenderObject)
通过继承 RiveRenderObject,你可以覆盖低层方法(如 advance / beforeDraw / draw),实现更高级的自定义操作。
说明(Note):这是低层能力。多数场景建议优先使用标准 Widget API。
可扩展点
advance(double elapsedSeconds):控制推进策略(比如倍速)beforeDraw(Canvas, Offset):绘制前操作(裁剪等)draw(Canvas, Mat2D):绘制过程注入自定义逻辑
典型用法
- 先加载 Artboard
- 绑定状态机控制器
- 在自定义 RenderObject 中接管推进与绘制
示例方向
- 运行时动态改组件颜色: https://github.com/HayesGordon/rive_flutter_runtime_color_change_example
- 跟踪 Rive 组件位置并叠加 Flutter 组件: https://github.com/luigi-rosso/rive_flutter_painting_context/
参考
- Flutter RenderObject 文档: https://api.flutter.dev/flutter/rendering/RenderObject-class.html
- 如何构建 RenderObject(视频): https://www.youtube.com/watch?v=cq34RWXegM8