小程序真机上面不支持requestAnimationFrame,但是可以在微信开发者工具上面运行requestAnimationFrame,没办法就改成
setTimeout去绘制canvas,但是绘制几次后就会严重掉帧...有没有什么其它好的解决方案或者建议啊...实在是没办法定位到问题
框架类型 | 问题类型 | API/组件名称 | 终端类型 | 微信版本 | 基础库版本 |
---|---|---|---|---|---|
小程序 | Bug | createCanvasContext | 客户端 | 7.0.3 | 2.6.0 |
小程序真机上面不支持requestAnimationFrame,但是可以在微信开发者工具上面运行requestAnimationFrame,没办法就改成
setTimeout去绘制canvas,但是绘制几次后就会严重掉帧...有没有什么其它好的解决方案或者建议啊...实在是没办法定位到问题
3 个回答
分固定的画图 + 动态的画图。 先画固定的画图,画完保存为临时图片文件(wx.canvasToTempFilePath), 然后定时器里 画的时候先把前面保存的图片贴上去(CanvasContext.drawImage), 再画动态的部分。
我画动画 画出来就是PPT。
CanvasContext.draw(boolean reserve, function callback)
将之前在绘图上下文中的描述(路径、变形、样式)画到 canvas 中。
参数
boolean reserve
本次绘制是否接着上一次绘制。即 reserve 参数为 false,则在本次调用绘制之前 native 层会先清空画布再继续绘制;若 reserve 参数为 true,则保留当前画布上的内容,本次调用 drawCanvas 绘制的内容覆盖在上面,默认 false。
研究了半响其实是
draw
这玩意导致的卡顿
请问你知道卡在哪里,然后有解决办法吗?
没有办法解决,因为这个接口需要和Native通信。建议给客户购买双卡双待的Iphone来解决这个问题。
我引入好几张图片放入画布,真机运行也卡顿得很,ios 12.1
不只是渲染卡,连开发工具都停止响应了。