【发布时间】:2023-03-17 21:29:01
【问题描述】:
我正在使用 Unity 的最新测试版 (2018),但在更改预制件中图像的颜色时遇到问题。
我在 2 种情况下使用我的预制件“A”。第一次工作,然后我加载/销毁其他预制件并再次加载我的预制件“A”,它不再工作了。我不明白为什么,Unity 没有给我任何错误。逐步调试似乎并没有表明有什么问题。我无法真正描述我在两次调用之间所做的一切(激活/停用预制件/游戏对象,调用外部 DLL 中的函数......)。当我 2 天前尝试时,一步一步的调试器使 Unity 在该行崩溃。现在很好,但是颜色没有变化。
我的代码只是:
this.backgroundImage.color = this.ColorRowHover;
其中 backgroundImage 是 GameObject 中的 Image(不包含或链接到当前游戏对象,它只是对另一个 Image 的引用)。而 ColorRowHover 只是一种颜色。此代码在 OnPointerEnter 中调用。
颜色没有改变,如果我尝试在检查器中更改它,它也不会改变。我选择了颜色,它没有更新检查器中的属性,也没有更新显示。
你们知道这里可能是什么问题吗?或者如何找到更多的线索来调试这个?
更完整地说:我的游戏对象有一个 OnPointerEnter,这样每次鼠标进入该对象时,后面的一整行都会改变颜色。
谢谢,
【问题讨论】: