家人们,这个是我的代码;
我把这个脚本挂在了Canvas下的一个节点Hero上,这个节点的父亲节点就是Canvas,通过resources加载一张图片当作创建节点中精灵组件的图片帧。之后设定了一个计时器,每次创建两个节点,将这张图片挂在这两个节点上。但是除了第一次输出图片的宽高是正常的之外,到了第二次以后输出的图片帧的宽高都变成了2048,真的不知道是哪里出了问题。
我试了一下,把新创建节点 setParent() 这一句去掉之后问题就没有了,但是为什么?烦请各位大佬帮帮。
家人们,这个是我的代码;
我把这个脚本挂在了Canvas下的一个节点Hero上,这个节点的父亲节点就是Canvas,通过resources加载一张图片当作创建节点中精灵组件的图片帧。之后设定了一个计时器,每次创建两个节点,将这张图片挂在这两个节点上。但是除了第一次输出图片的宽高是正常的之外,到了第二次以后输出的图片帧的宽高都变成了2048,真的不知道是哪里出了问题。
我试了一下,把新创建节点 setParent() 这一句去掉之后问题就没有了,但是为什么?烦请各位大佬帮帮。
你把createBulle函数放在了start(开局只执行一次)函数里了,如果你想每秒更新的话,应该放在update里
您好,谢谢您的回复,但是我并没有把creatBullet函数放在start中呀,我在start函数中设置了一个计时器,通过计时器调用creatBullet函数。现在的问题是,bulletImage这个属性在creatBullet函数中打印其属性每次除了第一次打印是正常的之外,后面几次打印都是2048,就很奇怪
我说的是start里面的函数->this.schedule(this.creatBullet,0.5)这段,你把这串移到upduate试一下。
您好,我已经看过了您发的生命周期回调函数的链接,但是我还是不明白您的意思,您能再说得清楚些吗?
我之前用小程序开发的时候,如果我没记错的话,周期性回调函数,应该方在upduate里。我先去解决我bug了,你再看看吧,吃多bug就行,哪个回调函数我很久之前才用过,现在忘了,非常抱歉没帮上你。
没事的,你能回复我已经很感谢了,谢谢您
应该是自动合图了,所以你 获取后的是合图后的宽高,你可以去除这张图片的合图设置后宽高就正常了,这也是官方人员告诉我的,具体我未尝试过,你可以试试。但无论如何,我都觉得不,应该获取合图后的整张图片,并不是人们所希望的,但是官方并未有想过作出改变。记住这个坑就好了
嗯嗯好,谢谢您啦,问题已经解决啦,再次感谢您
是我说的那个原因吗?
感觉是开启了自动合图
不好意思我刚看见您的信息,是的,是您说的那个问题,是Cocos自动合图导致的原图的大小发生了变化。
不好意思刚看见您的信息,是这样的,是Cocos开启了自动合图所以才会出现图片加载之后读取图片大小和原图片大小不一致的情况。