用途:当任务需要自定义绘制时选用 React Native Skia;常规布局与可访问的原生控件仍保持原生视图,不因绘制需求替换整体架构。
主要能力:按工作负载选择绘制原语——稳定场景用 retained drawing,需要录制变化命令列表时用 Picture,重复精灵共享纹理时用 Atlas;着色器并不必然比形状更快,模糊、过度绘制、纹理上传、分辨率与实时资源数都会影响性能。支持画布、路径、富文本、着色器、图像、快照、视频与动画图形。
使用方式:改动依赖或架构前,先查看实际锁定的 Skia、React Native、React、Reanimated、Worklets 版本、目标平台、渲染后端与相关组件。共享或派生值应直接传给绘制属性,不要仅为了动画把 Skia 绘制节点包进 createAnimatedComponent/useAnimatedProps;Skia 颜色使用 interpolateColors。分组状态可用 select API 绑定对象字段,但不要把 withTiming/withSpring 对象嵌套其中并假设逐字段动画。文本换行或多样式优先用 Paragraph。含纹理的快照按文档异步路径在正确渲染上下文中进行,并等待真实资源就绪而非固定延迟。
限制与注意:异步图像、字体、视频与着色器编译失败需加保护;检查绘制原点、弧度、裁剪与图层语义后再把视觉缺陷当作性能问题。装饰性循环与帧回调应在卸载和离屏/后台时取消。Reanimated 的 useReducedMotion 读取启动偏好,运行中响应需实际订阅。Canvas 无障碍标签不会暴露其内部交互形状,需用原生控件镜像命中区域与变换,并验证连续手势、取消、边界变化与多点触控。类型检查须在真实项目中进行,发布级构建需在代表性设备上分析 GPU 成本与内存;模拟与 CanvasKit 测试不能作为原生渲染证据。资料未提供具体价格与平台支持清单。