收藏
回答

多个canvas重绘时的覆盖问题

  1. 我有两个canvas,其中canvas1是前面的canvas(是一个矩形区域,我绘制很多小的rect在上面),canvas2是后面的canvas(在矩形区域上的一个button,使用canvas绘制),并且两个canvas的区域会重合,初始化时,canvas2能够覆盖在canvas1上面(第一次绘制两个canvas的内容),正确

  2. 当我触发一些操作导致重绘,canvas1和canvas2都进行重绘,这个时候就会发现,canvas2的内容被canvas1(上面有很多个小rect)所覆盖,即canvas2所绘制的button被canvas1绘制的很多小rect所覆盖在下面

  3. 我尝试了将canvas2的绘制setTimeout了几秒..仍然会出现这种canvas2绘制内容被canvas1所绘制内容覆盖的现象,但是无论是wxml的位置,还是重绘的顺序,都是canvas2在后面,为什么会出现canvas2被canvas1绘制内容覆盖的现象呢?

最后一次编辑于  2018-03-05  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏关注问题回答

2 个回答

  • 张爪子
    张爪子
    2018-04-24

    这个,如果两个Canvas都有<block wx:if></block>进行判断呢,这个怎么处理,我也遇到了跟你同样的问题。也是初始化的时候显示正常,触发一些操作导致重绘,canvas1和canvas2都进行重绘,但是却被覆盖了。有没有可行的解决方案呢

    2018-04-24
    赞同
    回复
  • 翁灿标
    翁灿标
    2018-05-03

    你把<block wx:if="">改成<block wx:show="">试试,这样就不会重绘了

    2018-05-03
    赞同
    回复