根据需求,先在编辑器里面拖拽一个图片,设置成九宫格。然后根据运行时的情况,需要在代码动态把图片替换成其他颜色的图片,但此时发现原本的九宫格效果失效了。
sprite那些type参数,肯定都不会改变。但毕竟最初的图片是需要手工在编辑器里面自己调好九宫格边界的,可能问题就出在这里了。但我的每个图片的大小都是一样的。请问各位,是不是即使这种情况(图片大小没有变),九宫格的图片也不能在代码中动态替换呢?谢谢!
根据需求,先在编辑器里面拖拽一个图片,设置成九宫格。然后根据运行时的情况,需要在代码动态把图片替换成其他颜色的图片,但此时发现原本的九宫格效果失效了。
sprite那些type参数,肯定都不会改变。但毕竟最初的图片是需要手工在编辑器里面自己调好九宫格边界的,可能问题就出在这里了。但我的每个图片的大小都是一样的。请问各位,是不是即使这种情况(图片大小没有变),九宫格的图片也不能在代码中动态替换呢?谢谢!
你需要保证你替换的图片都已设置好九宫格切片参数,可以编辑器里每张手动设置
也可以在需要变动的图片上写上如下代码
this.spriteFrame.insetBottom = 10;
this.spriteFrame.insetLeft = 10;
this.spriteFrame.insetRight = 10;
this.spriteFrame.insetTop = 10;
如果说你的图片名不一样,动态切换的话,是不会有九宫格的,这个问题我都提了好几次了。。。不知道其他人怎么解决的
动态切换图片之后需要设置参数。你在编辑器里面使用九宫格的不也要编辑图片才能用
非常感谢,您这个方法解决了我的问题!